feat: @[pp_no_structure_instances]

See also https://leanprover.zulipchat.com/#narrow/stream/287929-mathlib4/topic/making.20.60op.60.20irreducible

The negation in the attribute may be a bit confusing. Can we maybe have pp_structure_instances, on by default, and negated by -pp_structure_instances, akin to -simp? (Just a thought, not a big deal)

The negation in the attribute may be a bit confusing. Can we maybe have pp_structure_instances, on by default, and negated by -pp_structure_instances, akin to -simp? (Just a thought, not a big deal)

I'm not sure how I feel about this. Is there precedence for such an on-by-default attribute? I can't think of one off the top of my head. Do I understand correctly that with your suggestion one would tag the structure with @[-pp_structure_instances]? I have never seen that syntax used in this way, I have only ever seen attribute [-attr] name used after the fact.
FWIW, there is definitely precedence for the negated attributes, namely the (not entirely unrelated) @[pp_nodot] attribute.

Fair points, I'll retract my suggestion

Hmm, but something rubs me the wrong way about this attribute.
Would it be more elegant to have a [pp_instances method] attribute where the method indicates the desired pretty printing (record syntax, anonymous brackets, constructor function)? Assuming that a user who wants to have control about the pretty printing, why not give them more control?

it be more elegant to have a [pp_instances method] attribute where the method indicates the desired pretty printing (record syntax, anonymous brackets, constructor function)? Assuming that a user who wants to have control about the pretty printing, why not give them more control?

I like this idea in principle. One potential problem I see is that adding pp_instances would probably entail removing @[pp_with_anonymous_constructor], which would be an otherwise avoidable backwards-incompatible change. Another interesting question would be whether this attribute would apply even if the pp.structureInstances setting is set to false (this is not the case for pp_with_anonymous_constructor today).

The old attribute could just become a synonym for pp_instances anonymous, couldn't it (possibly with a deprecation warning, now or later)
As for the interaction with pp.structureInstances I'd consider changing that, so that if one disables this pretty printing option, one reliably gets less pretty and more explicit terms - that seems to be the purpose of pp.structureInstances false, isn't it?

Thanks for the implementation @TwoFX, but I'm going to suggest that we close this PR. There's enough discussion here where it would be better to continue it on Zulip and form an RFC before continuing. However, I also think that this particular feature, while justified for the particular use case, has limited applicability and is served well enough by app unexpanders:
structure Opposite (α : Type u) where
  op :: unop : α

/-- info: { unop := 1 } : Opposite Nat -/
#guard_msgs in
#check (Opposite.op 1)

@[app_unexpander Opposite.op]
protected def Opposite.unexpander_op : Lean.PrettyPrinter.Unexpander
  | s => pure s

/-- info: Opposite.op 1 : Opposite Nat -/
#guard_msgs in
#check (Opposite.op 1)

open Opposite

/-- info: op 1 : Opposite Nat -/
#guard_msgs in
#check (Opposite.op 1)

@nomeata The pp.structureInstances option has the same polarity as pp.notation. In principle neither structure instances nor notation hide information and they're just showing a term with a different point of view. This is a little bit of a lie, but, for what it's worth, they do disable themselves when, for example, pp.explicit is true and they would be hiding implicit arguments (at least for correctly written delaborators).

@kmill Thanks! I agree that unless this use case turns out to come up much more frequently than we're currently seeing the unexpander is the best solution. I'll open a mathlib PR.

@TwoFX I completely forgot to suggest just not using structures. Are they being used just to avoid needing to define the unop projection? Or is there some reduction performance consideration?
inductive Opposite (α : Type u)
  | op : α → Opposite α

def Opposite.unop {α : Type u} : Opposite α → α
  | .op x => x

/-- info: Opposite.op 1 : Opposite Nat -/
#guard_msgs in
#check (Opposite.op 1)

open Opposite

/-- info: op 1 : Opposite Nat -/
#guard_msgs in
#check (Opposite.op 1)

@TwoFX I know that the structure command uses Expr.proj in the projection functions it defines, and this expression is used in some kernel-level optimization, but I don't know the exact impact, and I would guess that for one-field structures it's not worth worrying about. (By the way, isStructureLike is simply checking that the inductive type is non-recursive and has just one-constructor. The kernel doesn't use isStructure.)
The big issue in Lean 3 used to be that there was no "eta for structures":
inductive Opposite (α : Type*)
  | op : α → Opposite

def Opposite.unop {α : Type*} : Opposite α → α
  | (Opposite.op x) := x

open Opposite

variable {α : Type*}

example (x : α) : unop (op x) = x := rfl
example (x : Opposite α) : op (unop x) = x := rfl -- fails

However, the Lean 4 version works:
inductive Opposite (α : Type u)
  | op : α → Opposite α

def Opposite.unop {α : Type u} : Opposite α → α
  | .op x => x

open Opposite

example (x : α) : unop (op x) = x := rfl
example (x : Opposite α) : op (unop x) = x := rfl

It this is because eta-for-structures applies and can transform x into op x.1 where x.1 is using Expr.proj.
Regarding mathlib, we could consider writing a command for defining these wrapped types and handling how it pretty prints, leaving whether it's done as an inductive or structure as an implementation detail. It'd be good for uniformity.

@kmill Thank you for the explanation. Having such a command would be nice, but I don't think it's urgent.


Update modules service plan version to 6.3.0

Updated app service plan to version 6.3.0
Fixes #(issue) .
Type of change

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

Changes proposed in this pull request
Fixes https://github.com/claranet/terraform-azurerm-app-service/issues/13

@claranet/fr-azure-reviewers

@BzSpi it is possible for this change a new release to be published ?


Add support cpu frequency on linux

This PR has breaking changes:

CpuFreq.min and CpuFreq.max have their return type changed from Mhz to Option<Mhz>
The return type of cpu::cpu_freq is changed from io::Result<CpuFreq> to psutil::Result<Option<CpuFreq>>.
The return type of cpu::cpu_freq_percpu changes from io::Result<Vec<CpuFreq>> to psutil::Result<Vec<CpuFreq>>.

Apologies for closing this, there were two conflicting PRs for this functionality when I finally got around to reviewing them (https://github.com/rust-psutil/rust-psutil/pull/116).


kubernetes-dashboard: Upcoming breaking changes

From https://artifacthub.io/packages/helm/k8s-dashboard/kubernetes-dashboard:

! Breaking change !
Starting from the release v7 for the Helm chart and v3 for the Kubernetes Dashboard, underlying architecture has changed, and it requires a clean installation. Please remove previous installation first.
Kubernetes Dashboard now uses cert-manager and nginx-ingress-controller by default to work properly. They will be automatically installed with the Helm chart. In case you already have them installed, simply set --set=nginx.enabled=false and --set=cert-manager.enabled=false when installing the chart to disable installation of those dependencies. If you want to use different software in addition to disabling nginx and cert-manager you also need to set --set=app.ingress.enabled=false to make sure our default Ingress resource will not be installed.

blocked until upstream helm chart reaches 7.x stable and the change is arriving


Bumped the version of junit from 4.11 to 4.12 to match the maven build.

Merged in master, then tested this locally as well as Travis checks. +1 :tada:


localhost:3000 is empty

ive been following the coding examples, and running my microscope app. however my localhost:3000 is returning just a blank page? anyone have this issue?

Also having this issue...
Seems to be related to this:
`

Microscope

{{> postsList}}

`

are you code meteor at terminal ？
and did it console server is running ？
or you can point port with -p 8080


It would be better if can show error message

Sometimes we want to tell user what kind of error happened. Is this an acceptable idea?

@sunkehappy You could pass a custom component to the showCustomComponent() method:
var customComponent = (<Text style={{color: "#ffffff"}}>Loading</Text>)
this.refs.hudView.showCustomComponent(customComponent)

https://github.com/iktw/react-native-hud-view#show-custom-component-hud

@sunkehappy do you have examples on how to add a custom component delcaratively?


Makefile targe to disable certification check

The idea here is to be able to disable the certification check at compile time by using the make target:
make relnocert
This way we don't have to make separate branches for benchmarking.  I guess eventually the cert check will be done dynamically deeding on the object and what the client wants.
The issues with the certification check are described here:
https://github.com/SyncFree/antidote/issues/131
https://github.com/SyncFree/antidote/issues/130

Tyler, can you resolve the conflicts with master?
I would at least add another Makefile target to run the test suite under different configurations (i.e. with and without the check). And one large target that runs all the configurations.

If you run
make rel
It is the same as before (it includes the certification check).

They both get built to the same "rel" directory, so you can only have one version at a time.
Otherwise I could make them build to different directories and configure the tests to run in both directories. Is this what you mean?
I guess the goal is to eventually be able to build antidote with different consistencies so maybe we should have a standard way of doing this.
Otherwise the rebar profiles seem like something interesting to use here, but needs rebar3
https://www.rebar3.org/docs/profiles

Am 29.09.2015 um 20:07 schrieb tcrain<EMAIL_ADDRESS>If you run
make rel
It is the same as before (it includes the certification check).

They both get built to the same "rel" directory, so you can only have one version at a time.
Otherwise I could make them build to different directories and configure the tests to run in both directories. Is this what you mean?

Yes, having one make target that builds and tests both configuration options would be necessary at least for use in the CI server.

@tcrain Please fix conflicts

Conflicts are resolved.
Also I created an issue https://github.com/SyncFree/antidote/issues/165 to track this until we come up with a more complete way to build and test different versions.


Add 'The Souls of Black Folk' and 'Cane' to wanted ebooks

The Souls of Black Folk is an incredibly influential book, and has a more or less permanent place in Project Gutenberg's top 50 most downloaded books.
Cane  is not as well known, but is considered a classic modernism, and is a good example of work from the Harlem Renaissance.
I put both these in the moderate difficulty section, since both are relatively short, but Souls starts each chapter with a song, complete with music notation, and Cane has a lot of poetry and somewhat interesting formatting.

I would put Cane as advanced. It has lots of formatting and unique structure and spelling. Can you tweak that?

Sure, done.

Thanks!


Allow configuration of error-or-warn on asset download failure

This might be enough configuration that we need to abstract it to a config object OR attributes on a client.

Closed by #23


Support non-access key based AWS credentials

Currently kots determines if the Docker repo being used is an ECR repo. If it is, it expects to be provided with an access key and secret to authenticate with the ECR repo. However in some cases, kots will be run with an assumed role or on an EC2 instance with an instance role that doesn't have an access key. The go SDK will use a default credential provider chain if no credentials are specified that will use the instance role or other credentials.
This change allows kots to be installed without an access key when using ECR
I didn't see a contributor guide so happy to take any feedback
Related to feature 31678, although this isn't likely sufficient to truly solve that case

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


Merge fix for cropping, fixed wallpaper compression

I close it for now cause githib can't merge it automaticly... I'll merge the branches later today.


can we move the declare() statements in conjugate sampler code to setup from run?

It looks like we are allocating memory every iteration of the sampler. We know the sizes at setup time so could we do this in setup code?

Fixed by #524

@fritzo Here's that moment of satisfaction, clicking the "Close issue" button


GORM Oracle Query Results Scanning issue

What version of Go are you using (go version)?
go version go1.11 linux/386
Which database and its version are you using?
Oracle Database 12c Enterprise Edition Release <IP_ADDRESS>.0 - 64bit Production
Please provide a complete runnable program to reproduce your issue. IMPORTANT
We created our Oracle dialect called "goracle"
goracle.zip
package main
import (
"fmt"
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/goracle"
)
type Product struct {
gorm.Model
Code string
Price uint
}
//Simple program to test GORM on Oracle DB
func main() {
fmt.Println("opening connection to oracle...")
db, err := gorm.Open("goracle", "user/xxxxx@xxxxx.xxxx.xxxxx.com:1111/dbname AS SYSDBA")
if err != nil {
fmt.Println(err)
panic("failed to connect database")
}
fmt.Println("Connection opened...")
db.LogMode(true)
defer db.Close()
var products Product
rows, err := db.Model(&Product{}).Find(&products).Rows()
defer rows.Close()
for rows.Next() {
var (
id   int
created_at string
deleted_at  string
updated_at string
code string
price  int
)
if err := rows.Scan(&id,&created_at,&deleted_at,&updated_at,&code, &price); err != nil {
panic(err)
}
fmt.Printf("Scan to variables: %d create :%s delete %s update %s code %s  price %d\n", id,created_at , deleted_at,updated_at,code, price)
db.ScanRows(rows, &products)
fmt.Printf("Scan to structure: %+v\n", products)

}
Output
[2018-11-07 08:16:36]  [29.99ms]  SELECT * FROM products  WHERE products.deleted_at IS NULL
[4 rows affected or returned ]
Entering LimitAndOffsetSQL function...
LimitAndOffsetSQL:
[2018-11-07 08:16:36]  [14.14ms]  SELECT * FROM products  WHERE products.deleted_at IS NULL
[0 rows affected or returned ]
Scan to variables: 1 create :2018-11-05T11:59:52-08:00 delete 2018-11-05T11:59:52-08:00 update 0001-01-01T00:00:00Z code Product 1  price 5900
Scan to structure: {Model:{ID:0 CreatedAt:0001-01-01 00:00:00 +0000 UTC UpdatedAt:0001-01-01 00:00:00 +0000 UTC DeletedAt:} Code: Price:0}
Scan to variables: 2 create :2018-11-05T11:59:52-08:00 delete 2018-11-05T11:59:52-08:00 update 0001-01-01T00:00:00Z code Product 2  price 2100
Scan to structure: {Model:{ID:0 CreatedAt:0001-01-01 00:00:00 +0000 UTC UpdatedAt:0001-01-01 00:00:00 +0000 UTC DeletedAt:} Code: Price:0}
Scan to variables: 3 create :2018-11-05T11:59:52-08:00 delete 2018-11-05T11:59:52-08:00 update 0001-01-01T00:00:00Z code Product 3  price 2650
Scan to structure: {Model:{ID:0 CreatedAt:0001-01-01 00:00:00 +0000 UTC UpdatedAt:0001-01-01 00:00:00 +0000 UTC DeletedAt:} Code: Price:0}
Scan to variables: 5 create :2018-11-05T11:59:52-08:00 delete 2018-11-05T11:59:52-08:00 update 0001-01-01T00:00:00Z code Product 5  price 4230
Scan to structure: {Model:{ID:0 CreatedAt:0001-01-01 00:00:00 +0000 UTC UpdatedAt:0001-01-01 00:00:00 +0000 UTC DeletedAt:} Code: Price:0}
Summary
As you can see from the above result, if we scan the results directly to our variables they are populated correctly, but if instead we use the Products structure it retrieves an empty structure instead. The same is true for all the methods of querying the DB.

Hi @ssilvan!  Your solution helped me a lot to work with Oracle. I hope for a quick fix issue with the structures. It will be great to make your solution work as well.
@jinzhu I hope that you will add this dialect to the master branch, after the correction. It is very useful.

Hi @ponomarenko-v ,
In order to get the structures populated correctly, you can use the the file I am attaching here.
The issue was found on line 498 of the jinzhu/gorm/scope.go file
Replace this file with the attached one, using the goracle.go dialect plus this fix all the interactions with your Oracle Database should work fine now.
Hope this helps you! Let me know how it goes.
Thanks,
Sergio
scope.zip


Animation is not working in foundation APP..............

I wrote it like following

And in template
name: myProfile.signal
url: /signal
controller : myProfileCtrl
animationIn: fadeIn
animationOut: fadeOut
NOT working...................

I believe this should be posted in the foundation-apps repo?

Indeed, please re-open this issue on the Foundation for Apps issue tracker.
However, I'll say that we have a lot of improvements to view animation coming in v1.1 of the framework, which we're trying to get out tomorrow. Stay tuned!


Is it possible to reorder more than one track at a time?

Can I reorder, for example, 10 tracks at a time?
Put the last 10 track in the first positions?
Or just one by one?
thanks.

Hi, thanks for the quick response!
But, if I wanna put 10 tracks which are in non-sequential positions, in first?
For example: put track 4, 9, 13 in first. Or put in first 15, 9, 7, 11.
I tried to create a loop, but obviously, with each loop, the positions had already changed.
Is there a way to put an array first?
Thanks,

Aha, I see. It doesn't look like it's possible to pass an array though.
But shouldn't you be able to solve it by using a loop? Something along the lines of updating range_start and/or insert_before on each iteration?

Or on second thought, perhaps SpotifyWebAPI::replacePlaylistTracks() could be used together with SpotifyWebAPI::getPlayListTracks().
For example, getting all the tracks, reordering them, and then replacing the whole playlist.
$tracks = $api->getPlayListTracks('PLAYLIST_ID');

// Do some magic reordering...

$api->replacePlaylistTracks('PLAYLIST_ID', $reorderedTracks);

Amazing!
I will try this approach!
Thanks a lot

Amazing!
I will try this approach!
Thanks a lot


Expose registrableDomain()

Feature Request
Hi,
It would be great if registrableDomain() and subDomain() and other useful methods can be exposed via a Facade so that laravel users can migrate to laravel-domain-parser instead of php-domain-parser

Hey @khavishbhundoo
That's exactly what this package tries to solve!
Laravel  domain parser can be seen as a bridge package for pdp, it offers various bindings with the Laravel IOC container which expose the various functionalities of PDP. In addition it implements the Laravel cache out of the box for caching purposes and supplies a command for updating the cache. Please refer to #Maintenance for more information.
For example you can use the \Bakame\Laravel\Pdp\Facades\Rules and \Bakame\Laravel\Pdp\Facades\TopLevelDomains facades to access an instance of \Pdp\PublicSuffixList and \Pdp\TopLevelDomainList respectively.
Using the following should give you access to the registerable domain:
use Bakame\Laravel\Pdp\Facades\TopLevelDomains;

echo TopLevelDomains::resolve('distortedfusion.com')->registerableDomain()->toString();

// distortedfusion.com

I'm not planning to add a Laravel like API on top of the existing PDP API. Feel free to comment if you have any further questions. I'll leave this issue open for now to let others chime in.


Errors in python 3 when running pip install

looks like the code doesnt support py3?

It should support Python 3.3+
If you get some error installing please reopen with more info.


Maven plugin: NullPointerException in isVisible

I have a NullPointerException in isVisible(). Result is that all reporting is not available.
In the Jenkins logs:
Jun 30, 2016 3:43:39 PM hudson.ExpressionFactory2$JexlExpression evaluate
WARNING: Caught exception evaluating: action.isVisible() in /jenkins/view/XXX/view/5.%20Gatling/job/XXX-gatling-XXX-perf/. Reason: java.lang.NullPointerException
java.lang.NullPointerException

(I replaced some parts of the real URL with XXX for security reasons)
I can't actually pinpoint what makes it fail.
This is an overview of all builds in the job:

Jenkins version 1.651.3
Plugin version 1.2.0

Maybe related to this: https://groups.google.com/forum/#!searchin/gatling/NullPointerException$20jenkins/gatling/QYp3ArAR2vM/REJRke8ABAAJ

Did a debug session of the plugin. Not able to reproduce. But has something to do with latest build status. When the last build fails, there is no "Mean Response Time Trend" graph on the right side panel of the project page and even the Gatling icon in the left bar disappears.
This is not wanted behaviour when the build exits with failure because you used a Gatling assertion which failed. You want the graphic and the link to Gatling to appear at all times.

This is not a maven plugin issue but a Jenkins plugin one.
It was introduced in 1.2.0 with the support for pipeline API. cc @cprice404
@ccedric has a fix under way.

Any release date for 2.2.3?

End of August or September

somehow I missed the ping on this, sorry about that bug @slandelle !

@cprice404 No pro, this way, we could grow skills on Jenkins 2 too :)


Just a few spelling errors fixed while reading Adaptive Dialog docs

derevite  -> derivative
summaries -> summarize
provdie  -> provide

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


FRONTEND WITH FRAMEWORK: VueJS-3.2 => Class Binding

Description 📜
What is Class Bindings in Vue.js?
How does this work?
What are the advantages to use it?
Fixes #4897

Type of change 📝

[x] Documentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] Frontend Dev #React/Angular/Vue

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

![Screenshot (126)](https://user-images.githubusercontent.com/74728397/136394867-a4d6cf04-38aa-4000-bbf9-81316f5ddc84.png)

@anandhu720, please merge this PR.


docs: fix homepage ButtonGroup mobile rounded border

from

to

Looks much better, thank you!

@harlan-zw I asked if nuxt-ui could allow setting a css breakpoint directly within the component https://github.com/nuxt/ui/issues/1805


[CI-7017] Update as per CI-7017

Added "Truncated execution logs"
Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[ ] Tested Locally
[ ] Optional Screen Shoot.

Preview environment: https://ci.pr.harness.io/pr-721

Preview environment: https://ci.pr.harness.io/pr-721


taskwarrior data not appearing

I just installed fresh taskwarrior 3.0 and calcure
When I add tasks to taskwarrior, calcure doesn't show them.
When I open calcure I see a message "incorrect input" not sure if related
I added
taskwarrior_folder = ~/.task

to my config.ini
And don't see any errors on the log, besides:
[WARNING] Couldn't load birthdays. File. /Users/adrian/.abook/addressbook does not exist.

Am I missing something?

Thank you for reporting!
I think it has something to do with their recent upgrade to 3.0 and migration of the data files as described here. Calcure relies on taskw python library to interact with taskwarrior, and I can see that this library is not really updated. So, I am not sure I am ready to support the migration from this new version of taskwarrior as it will probably require for me to write a parser for their new database (I don't know how difficult it is yet). Originally, this import from taskwarrior was meant to be just a migration tool for those who wants to try calcure, but now I am not sure how many people still cannot decide which one to use :D
Anyway, let's keep this issue open for now, I'll take another look on occasion, or maybe someone will be willing to implement import from the new database.

So, at this point we will drop support for the Taskwarrior import since the library for that is abandoned and no longer works. I feel like spending time to develop my own parser is not worth it for such a niche feature, which was at early stages of the project, but perhaps now not that much. Sorry if this change affects your workflow.


Update output when project not found

Closes #131 and #213.

@proinsias closing this due to inactivity in responding to the PR review. If you manage to get back to this I can re-open the PR.


Gas Overlay Bug affecting Gas Miners

Description
Was messing with gas for a while, 30+ minutes, with another Atmos tech when familiar gas overlay bug occurred, as seen in images. The mixers started reporting 0 pressure despite not changing anything, so I assume gas overlay issue had to something to do with it.
Reproduction
Be near gas a long time, notice that that fire has been burning for a while without dying. Honestly, it seems to happen to me more often when I am using mixing chamber/fires for a long time, never have this glitch as a non engineering role. Maybe due to proximity to gases?
Screenshots

Additional context

Dupe of https://github.com/space-wizards/space-station-14/issues/9294 and some older issue I forget.


Object.votes.all(user_id) only returns a queryset of objects that I have Up voted

I have a user who has up-voted 4 items in total. When I then use object1.votes.down(user_id), it does decrement the vote as it should but then, If I make the query Objects.votes.all(user_id), that query only returns 3 items. I'm using the django shell and this is the exact code that I am executing.
>>> toppings = Toppings.votes.all(1)
>>> toppings
    <QuerySet [<Toppings: sprinkles>, <Toppings: hot fudge>, <Toppings: whipped cream>, <Toppings: cherries>] >
>>> t1 = toppings[0]
>>> t1
    <QuerySet [<Toppings: sprinkles>]>
>>> t1.votes.down(1)
   True
>>> Toppings.votes.all(1)
    <QuerySet [<Toppings: hot fudge>, <Toppings: whipped cream>, <Toppings: cherries>] >

Can someone let me know if I am using this incorrectly please?

After some experimenting with the api, it looks like both method all() and user_ids() have an 'action' option and instead of taking action=UP and action=DOWN as params, we have to pass 0 for 'UP' and 1 for 'DOWN' which isn't outlined in the docs.

There is a UP and DOWN constant in vote.models that you can  import and use instead of using the number 0 or 1 directly.
the down action was supported after so the the all and user_ids are using UP as the default action to make it back compatible.
I'm not sure what's the exact use case for you. I use the below pattern a lot, let me know if it helps.  Basically there is a annotate method, you can use it on a QuerySet , it will add is_vote_up and is_vote_down property for every object based on the passed user.
 queryset = Toppings.objects.filter({some query}).order_by('-num_vote_up')
 queryset = Toppings.votes.annotate(queryset, request.user.pk)


Compile commands should use paths relative to project directory

Instead of using paths relative to the compilation database, project-relative paths should be a little closer to visual studio's behavior and avoid making exact duplicates in the case two projects reference the same file.
This will also avoid more dummy macro-evaluations in the unit tests.

Based on failures with my real-world solution, this might not be workable :(
Feel free to close this if you think that's the case.

We testes this, too and it isn't working for us either.
Relative paths would provide the benefit that if you put his compilation database inside the version control next to the project's source files you could the move the project's root folder everywhere you wanted. But on the other hand side, the compilation database is a generated file that shouldn't be part of the version control anyway. And moving the compilation database file would break all those relative paths.
So I think we'll just stick to absolute paths for now.


Examples and documentation

hi i am newber. I want learn all command in libarry telegram bot. How can i search tutorial all command?

Here you'll find the wiki for the telegram bot library used. It links to both examples and documentation. Have fun!
I'm closing this since it's not an issue with this repository.

thank you


[question] How to use b?

I'm trying to use b to compile and test my project, I'm pretty new to Haskell, so I'm a bit lost with what's happening. If I run stack build then a compiled binary is ends up in .stack-work/install/x86_64-osx/lts-9.9/8.0.2/bin/ghtd, but if I run ./b or ./b --fast, I can't find out where the binary is being put, I've looked at the source of the file, and it doesn't seem to specify a path, so I'm a bit lost.
(sorry for the missing description on the issue, I've accidentally pressed enter while writing the title)

@mlopes , first of all thank you very much for using hs-init for creating your project! :heart:
b file is just the set of stack commands with all long arguments written for you. It's doing exactly the same that stack commands do and when you're using ./b the binary will be also where you expected it to be at .stack-work/install/x86_64-osx/lts-9.9/8.0.2/bin/ghtd.
--fast is not the valid argument for b script, it'll be just ignored, though in the script itself stack build --fast is used.
I've just cloned and tested to run ./b on your project locally, so I can confirm that binary file is located in .stack-work/install/x86_64-osx/lts-9.9/8.0.2/bin/ghtd.
You can also check the directory with built project using stack command. In my case it is:
$ stack path --local-install-root
  /home/vrom911/haskell/ghtd/.stack-work/install/x86_64-linux-nopie/lts-9.9/8.0.2

Hum... that is strange, I've tried making some changes to the code, running ./b, then running the binary in .stack-work/install/x86_64-osx/lts-9.9/8.0.2/bin/ and couldn't see any changes. I've also tried deleting the binary, and a new one wasn't created after running ./b.
The output I get from running ./b is:
$ ./b
ghtd-<IP_ADDRESS>: unregistering (components added: test:ghtd-test)
grep: empty (sub)expression

@mlopes , could you please describe details of steps to reproduce this behavior? This needs to be investigated more properly.
@ChShersh  could you please have a look at this one, any thoughts?

Ok, so, I'm not doing anything much, just running ./b the full path of the folder where I'm doing it is: /Users/mlopes/projects/Opensource/ghtd (It looks like you've already looked at it, but you can see the project files here https://github.com/mlopes/ghtd).
My grep version is:
$ grep --version
grep (BSD grep) 2.5.1-FreeBSD

I tried commenting out the pipe on line 71 of my b file, and everything works. It looks like somehow that call to grep is breaking things for me.

I have grep (GNU grep) 2.27. Probably that causes the issue.. Not sure..
What system are you using?

If you’re on OS X, then you probably installed grep using brew or something similar, OS X comes with the BSD versions of the tools (Darwin is based off FreeBSD), on Linux GNU grep should be the default.
I’m replying from the phone now. Will try that and report when I have access to the computer.

@mlopes thanks. Could you please try this enhanced version of b script : http://lpaste.net/359362
It works okay on Ubuntu so if it works for you on Mac I will replace the old version by this one.

I've tried it on archlinux for now, and it works, shows the stack build output, and makes the warnings red (which I expect is the expected behaviour here?). I'll test on the Mac later today.
I wonder why not use sed to introduce ANSI codes instead of grep?

I wonder why not use sed to introduce ANSI codes instead of grep?

@mlopes I have very little experience with bash. And I understand very little about this b script. I just copy-pasted it from another big project. Sorry, I can't be helpful here :(
But if you have any suggestions on this script improvement you can open an issue for that! :)

I've tested it with the script version @vrom911 suggested above and it works on OS X (BSD grep).

Thanks @mlopes . I will update b script with the working version and close the issue. Thanks for helping with testing!


Wrong Ram range for 4Mb ZIII cards

I’ve noticed that 4Mb Zorro iii (but not zorro ii) cards seem to show the range
0x40000000-0x4040ffff
On systest. Should be
0x40000000-0x403fffff
Causes systest to fail when testing the ram.

For Z3 space I will try rounding to nearest 1MB boundaries rather than rounding down/up to 64kB boundary (for lower/upper bounds resp.). Please test the attached version of systest, which implements this change:
systest_6_1.zip

I shall give it a whirl after work. Thanks for fixing quickly.

On 30 Oct 2018, at 10:55, Keir Fraser<EMAIL_ADDRESS>wrote:
For Z3 space I will try rounding to nearest 1MB boundaries rather than rounding down/up to 64kB boundary (for lower/upper bounds resp.). Please test the attached version of systest, which implements this change:
systest_6_1.zip
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Fixed for the TF534.. many thanks
Sent from my iPhone

On 30 Oct 2018, at 10:55, Keir Fraser<EMAIL_ADDRESS>wrote:
For Z3 space I will try rounding to nearest 1MB boundaries rather than rounding down/up to 64kB boundary (for lower/upper bounds resp.). Please test the attached version of systest, which implements this change:
systest_6_1.zip
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


How add protocol in options?

The source code shows the protocol urls.

I downloaded them and want to offer them by options, but I don`t know how to do it.
My version is V8, Is that mean I should offer two protocol ?

By the way, I used the remote: true
Thanks!

The source code shows the protocol urls.

You should probably ignore that URLs. Chromium team has decided to split the protocol in two parts to separate the V8 part from the browser part; you really need both.

If you want to fetch the protocol for a given Chrome version you can just run:
chrome-remote-interface protocol -r > protocol.json

Then if you want to use that protocol version:
const options = {
    protocol: JSON.parse(fs.readFileSync('protocol.json'));
};

Hope this helps.

Thanks to your answer.
But I got this protocol that seems not json, it`s js file

My os is debian and use dev chrome headless mode

Oh yes, my bad, the bundled utility should output proper JSON. I'm gonna fix it right away...

Here we go, now chrome-remote-interface protocol -r > protocol.json should give you a proper JSON file to use as I previously said.
Please let me know if this solves your issue.

Im sorry about that this doesnt slove my issue.
This is my commond and some info

And I got this file
download file
the file md5 is 9c5193f2763781ac3a4fd1307d1a7e46
I can convert it to json by tools, do you know whether result is right or not.
My Chrome version is
59.0.3067.0 dev version (64 bit)
and javascript is
V8 5.9.195
May this info can help you.
May be I am wrong.
First, I use
google-chrome-unstable --headless --remote-debugging-port=9222 --disable-gpu
to open headless chrome
ps: last time I add --remote-debugging-address=<IP_ADDRESS> ,this time I removed it because I found I cant connect by localhost ps 2: maybe I should -h <IP_ADDRESS>`,is it?
Secondly, I use chrome-remote-interface protocol -r -> protocol.json and got that result.
If you want more info, I`m glad to show you.
My english is very pool,sorry......:)

Im sorry about that this doesnt slove my issue.

Are you sure that you've updated to the latest version after myfix? You need to run:
npm update -g chrome-remote-interface

You can check the current version with:
npm show chrome-remote-interface version

ps: last time I add --remote-debugging-address=<IP_ADDRESS> ,this time I removed it because I found I cant connect by localhost ps 2: maybe I should-h <IP_ADDRESS>`,is it?

Well if you just specify the port, Chrome will listen on localhost. I don't think that the --remote-debugging-address option actually works, despite the description:

Use the given address instead of the default loopback for accepting remote debugging connections. Should be used together with --remote-debugging-port. Note that the remote debugging protocol does not perform any authentication, so exposing it too widely can be a security risk.

If I set that option Chrome still listens on localhost.

My bad, I forget update....
Thank you very much!

I have the other way where I want chrome to listen to localhost not <IP_ADDRESS>. Any help?

@mohyeid localhost usually resolves to <IP_ADDRESS>, what are you really trying to do?


fix(github): stellar CLI compilation

use --features opt flag when installing, which is required when optimizing contracts
set -x permission before caching
indicate missing shell field in one of the steps

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

Project coverage is 98.43%. Comparing base (e90657d) to head (d76398a).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #68      +/-   ##
==========================================
- Coverage   98.48%   98.43%   -0.05%
==========================================
  Files          33       33
  Lines        2113     2113
==========================================
- Hits         2081     2080       -1
- Misses         32       33       +1

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


Set max_fails default to 0 on single upstream

As #667 showed it might be beneficial to to use max_tries set to 0 as a default, when only one upstream is available. Marking a single upstream as down for 10s due to one bad request seems too conservative.

We're finding that this can have very adverse side-effects (see #784 and #782).

The default behavior is to try backends for 60 seconds (essentially infinite loop for 60 seconds). If max_tries is set to 0, it might make most sense to not bother with retrying connections and just return GatewayUnavailable once the backend fails.

^ That's a great idea I think. I was just about to suggest getting rid of that 60 second loop entirely, but breaking out of it only in the case of max_fails=0 is much more pragmatic.

We just got bit by that during some load testing, FWIW. We have load balancing set up outside of caddy (using amazon ELB), and a single request failure would cause really weird behaviour where requests to the hostname in question would be 502'd immediately, but requests using a different host header would be fine.
A max_fails default of 1 is way too conservative IMHO. If setting it to 0 by default is not an option, I would recommend at the very least bumping it up to 2.

I think this is addressed in #1135 because of new default values and slightly different logic. (Feel free to report back if it's not)


invisible paths still cause random sprites to appear

The invisible pathing feature still causes random sprites to appear upon loading a save game. My proposal is to replace these objects with a transparent footpath object, instead of a corrupt element there would be a footpath but it would use transparency so it would still be invisible. I am currently working on implementing this

I have fully implemented this and am waiting on blue land grid to submit PR,. I have tested the new invisible paths and they are working correctly

Can you upload a screenshot of those glitches?

https://user-images.githubusercontent.com/94884086/183407839-93fbc684-a969-4aec-bcc4-921f2e787af1.png

Other examples

I think this would be better solved in the engine rather than the object.


Disable animation

Is there any way to disable animation in one direction? For instance enable enter animations and disable exit animations. I assumed that if i set velocity-enter-transition instead of velocity-transition it would do exactly this, but it seems that the exit animations are always enabled.

@alexborisov Oh dear, this sounds like a bug!
Could you give a snippet of your markup with the transition classes and how you're showing/hiding the element?
Thanks

I created a separate project just for this test case and have been unable to replicate the issue. My guess it's a bug in my styling/logic. Sorry for the false alarm!


unittest shows wrong line number for decorated methods

VS Code version
1.64.0-insider
Extension version
v2021.12.1559732655
OS type
macOS
OS version
11.6
Python distribution
python.org
Python version
3.7
Language server
Pylance
Expected behaviour
VSCode should show a "run" button next to my test methods, with decorator or not
Actual behaviour
VSCode shows the "run" button next to the decorator definition instead of the test method
Steps to reproduce
Enable unittest in VSCode
Paste this code
import unittest

def decorated(f):
    def wrapper(*args):
        print("decorated")
        return f(*args)
    return wrapper

class TestStuff(unittest.TestCase):
    @decorated
    def test_stuff(self):
        assert 1 == 1

You will see the "run" button appear next to def wrapper(*args):, but it should be on def test_stuff(self):
Edit:
Bonus: every decorated method will go to its decorated function, so you can have 100 tests all on that one line
Logs
> ~/.local/share/virtualenvs/[REDUCTED_PATH]-SM8362Ue/bin/python ~/.vscode-insiders/extensions/ms-python.python-2021.12.1559732655/pythonFiles/testing_tools/unittest_discovery.py [REDUCTED_PATH] test*.py
cwd: [REDUCTED_PATH]

Edit:
Output of that discovery:
start
test_lol:TestStuff:test_stuff:4

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Unfortunately there's not much we can do here as we have to ask the method object where it exists and because you wrapped it the code object points to the decorator function and not the original method object.
I would also suggest you use the functools.wraps function to make sure your decorators look as much like the wrapped function as possible.

@brettcannon Thank you for the suggestion, that solved the problem!


Command failed: bundle show --paths

I keep getting the error Command failed: bundle show --paths when It ry to go to a definition inside my project.
I've installed ripper tags, when checking the debug console I see that vs code is trying to fire bundle show --paths from correct directory.
When I open a terminal inside VS code and try to fire the same command it correctly lists all the paths.
Any idea what I'm doing wrong?

Closing due to lack of activity. Please reopen if you want more help!

I have faced with the same problem.
I use rvm and when I try to launch tags generating at the VS Code console - it returns an error Your Ruby version is 2.6.0, but your Gemfile specified 2.5.1. That's common behaviour, when I open console in the project folder, cause rvm works if you write cd %foldername% only.
Usually, It can be solved easily - just add cd . && before command you try to execute.
So, I try to run cd . && bundle show --paths at VS Code console and it executes successfully. I change bustagem.cmd.bundle setting at settings.json, but it seem not working - the same error Bust-A-Gem: Command failed: cd . && bundle show --paths appearing.
I tried to use cd path_to_project also, but no changes.
Is there a possibility to see more verbose error message, than Command failed?

Sorry this stuff is so opaque. Trying to track down errors vscode => extension => external commands is a pain... You could modify Bust A Gem locally to spit out more information. Right now it doesn't bother printing out stdout & stderr when an error occur:
https://github.com/gurgeous/bust-a-gem/blob/master/src/util.ts
I don't use RVM, unfortunately.

For others facing this problem, I was able to fix it on my local setup by prepending the commands with rvm . do
{
  "bustagem.cmd.bundle": "rvm . do bundle show --paths",
  "bustagem.cmd.rip": "rvm . do ripper-tags -f TAGS -R --force --extra=q"
}

Thank you @sethjeffery! Wanted to dig in to fix it on my own, but you saved me the effort :).


is there any way to keep connection across pages?

Hello
any idea how to keep connection across pages or on reload?

You can not keep the connection open across different pages or when reloading the page.
Rather, use client side code to set a cookie with some sort of session token and, when reconnecting, read that token.
It's dangerous to use sessions alone. Take this! https://www.owasp.org/index.php/Session_Management_Cheat_Sheet

Thank you ghedipunk, although I don't understand what kind of session/cookie must store
Can you please provide some information??
I spend lot of time reading to find out how to make a persist connection
I find this
https://github.com/joewalnes/reconnecting-websocket
or with iframe
https://html.spec.whatwg.org/multipage/comms.html#introduction-12
SharedWorker might be a good idea but not all browsers support it.
Also i try to read why connection lost when you go to another page/reload but I can't find any information to explain..

OK I read the websocket protocol
https://tools.ietf.org/html/rfc6455#section-1.3
This answered to my question :)


New version: NordSecurity.NordLayer version <IP_ADDRESS> (3.3.3)

Created by 🥟 Dumplings in workflow run #6323.

Log
Updated: 3.3.2 → 3.3.3
Submitting WinGet manifests
Creating manifests
Uploading manifests and making commits
The manifests for the last version <IP_ADDRESS> will be removed. Reason: No installer URL is changed compared with the last state while the version is updated
Creating a pull request

Microsoft Reviewers: Open in CodeFlow

/azp run

https://github.com/microsoft/winget-pkgs/issues/142854


phantomjs fails to build

phantomjs is in one of the package dependencies and it fails to build on aws elastic beanstalk – probably need to upgrade dependencies and catch any breaking changes

I have updated the dependencies and in dev it seems that everything works correctly.
Can you try with version v1.3.0?

yep, back in action, thanks.


Improve UX when no data passes the thresholds

Right now if we change the thresholds to be so high that all results are filtered out, we get a viz that looks like

(from Bonus, correlation assay v metadata)
Which is not ideal. Let's instead have it look like...

So we see text in the empty plot that tells the user how to fix the issue, also we can highlight the input boxes in warning yellow

unassigning myself in case someone else wants to take a stab at it! I started work towards this in https://github.com/VEuPathDB/web-monorepo/pull/774 if that is helpful


Restart as non-elevated does not always work

Environment
After https://github.com/microsoft/PowerToys/pull/884
Steps to reproduce
Start elevated PowerToys at logon. Use the "restart as non-elevated" button.
(might be important: in my setup, #953 does not reproduce)
Expected behavior
PowerToys restart as non-elevated
Actual behavior
PowerToys restart as elevated. If restarted as non-elevated for the second time, everything works as expected.

has this been looked at / reproduced?

We disabled the feature since it had too many issues.
If the users need to restart non-elevated, they can turn off "Always run as admin" and manually restart.
Since it's not a so common scenario, it should be an acceptable workaround.
Closing this since it doesn't apply anymore.


No audio playback functionality implemented

Hi,
unfortunately I found no possibility to play songs as described here:
http://jsfiddle.net/JMPerez/p30pb38z/
or something similar to that. Is it not implemented yet?

I gess this is not implemented because the whole player part is "Beta" https://developer.spotify.com/web-api/web-api-connect-endpoint-reference/

Working on it.
See #102 and Project v2.

I'll close this. Please follow #102 for updates.

Implemented all Player endpoints in 40c16770c0148cada236b12a32e8853e776d2b7c.

Version 2.0.0-RC1 was just released.


Add darwin CI job

Fix unstable test on OSX environment
Reference issue
Part of #174

@at-wat It looks like the instability mainly comes from the OSX. I wonder if we can configure the system to increase the stability.

ticker accuracy

interval
count
Linux
OSX

100µs
10
1.07ms
4.75ms

1ms
10
14.00ms
21.86ms

10ms
10
100.15ms
131.97ms

100ms
10
1.00015s
1.10824s

Timer on OSX seems just awful.

@lherman-cs if it looks good to you, I'll update branch protection rule and merge.

The weird thing is that it is fine on my local machine.

interval
count
Linux
OSX
Local Machine (also using Catalina)

100µs
10
1.07ms
4.75ms
1.03ms

1ms
10
14.00ms
21.86ms
10.01ms

10ms
10
100.15ms
131.97ms
102.31ms

100ms
10
1.00015s
1.10824s
1.0048s

@lherman-cs if it looks good to you, I'll update branch protection rule and merge.

What update are you referring?

So, it might be a GitHub Action environment specific problem? (high load)

So, it might be a GitHub Action environment specific problem? (high load)

Yea, that's what I'm leaning toward to now.

Update to make new jobs Required and remove old jobs from required status.

Update to make new jobs Required and remove old jobs from required status.

Yes, please. Thanks!


Payment Flow and Architecture for websites - Discussion

We want websites and online stores to accept payments in tnb coins for that we want respective APIs to be written.
A common architecture of such payments looks something like this.

Do we need to prepare any system where any website can integrate our Barcode and after scanning the Barcode we can handle the payment as per out architecture? Or we need to prepare a button like stripe provides or just need to create an API where we get user data and process the process the transaction?

@pgeorge2 let's start with the API I think.

Below link might be one reference for us to prepare our own system.
https://commerce.coinbase.com/docs/#quickstart
Let me know your thoughts.

@shahraizali As mentioned in the architecture, do we need to create a new account for each transaction/payment of customer? or we will be using one account per customer?

Diagram says, store sends 500 coins to client and then validate the transaction. Can you please elaborate this point?

I think that account is

do we need to create a new account for each transaction/payment of customer? or we will be using one account per customer?

I think that account is of the store where they want to receive the payment.

Can you please elaborate this point?

That is not store sending the amount. It means the amount is to be sent by the client to the store. so the store is making that transaction for the client and since it cannot make that transaction on the behalf of the client it has to go through the client. So the client signs it and create the block post it to the bank. where the transaction is validated. The purchase should not be completed until the transaction is a part of the chain. This can be one flow that I explained according to my understanding. Maybe @buckyroberts can elaborate better.

@shahraizali
Followig are the Payment APIs breakdown of all methods we can use to accept the Payment and comfirm it.
TheNewBoston Payment APIs

fetch/create account of website/store using bank.fetch_acconts/accounts.create_account method
validate customer balance using primary validator and method validators.Validator.fetch_account_balance and check the sufficient balance of customer
send the block request to bank using bank.Bank.post_block method
send the confirmation block to bank using bank.Bank.send_confirmation_block method
Send confirmation to the website

Let me know your thoughts about the steps and methods.

This overall architecture looks good.  For online stores, once we have a browser wallet like Metamask, we can even have the website prepopulate the browser wallet with the necessary transaction information and the wallet will take care of the connection to the blockchain and execute the transaction.  The blockchain research team is looking into browser wallets now, and the possibility to leverage Metamask/its features for it.
Metamask docs: https://docs.metamask.io/guide/getting-started.html#getting-started

This overall architecture looks good. For online stores, once we have a browser wallet like Metamask, we can even have the website prepopulate the browser wallet with the necessary transaction information and the wallet will take care of the connection to the blockchain and execute the transaction. The blockchain research team is looking into browser wallets now, and the possibility to leverage Metamask/its features for it.
Metamask docs: https://docs.metamask.io/guide/getting-started.html#getting-started

You guys have already excepted my proposal for this. Check your slack dm's

Check your slack dm's

@mrbusysky Hey there! No DM on my end you can please share here what are you talking about?


dBeaver stopped responding when closing SQL editor tabs

Description
while transversing open SQL editor tabs, dBeaver took up most of the CPU and went white.
Created the below thread dump and had to manually kill the process in Task Manager.
thread-dump_2023-03-20.txt
DBeaver Version
Community Edition 23.0.0
Operating System
Windows 10
Database and driver
No response
Steps to reproduce
dBeaver was open
there were a number of SQL editor tabs open
I was navigating between them
dBeaver froze
Additional context
No response

@coleman-rik Hi, could you retake the thread dump it looks like it was made when the app was initializing when the freeze happened.

@Destrolaric ,
I don't understand your request.  I can't take another at this point because it is no longer doing that.
The thread dump was taken after the UI froze, while it was white an unresponsive.

@coleman-rik Thank you for your report.

Can't reproduce and there not hints in the thread dump. It may be an Eclipse bug, I may assume that bug was caused by a big number of events in window proc.

Probably will be fixed in #19553

@coleman-rik please reopen if it will happen again


Unexpected random crashes with java.lang.IllegalStateException: Unbalanced enter/exit

2 weeks ago, we started experiencing spontaneous crashes after 5 to 10 minutes of app usage. No prior changes were implemented to the app before the crashes started. The logs indicate that the issue is related to the OkHttp/Okio library. This problem occurs on all devices. #3641 described a similar issue, it is suggested that it could be related to the D8 compiler, and a possible solution is to disable D8 in gradle.properties. However, in order to do this, I will have to downgrade Gradle to version 3.0.0, which was released in 2017. Are there any other possible solutions or workarounds for this?
Btw, we use OkHttp 4.10.0.
FATAL EXCEPTION: OkHttp Dispatcher
java.lang.IllegalStateException: Unbalanced enter/exit
		at okio.AsyncTimeout$Companion.e(AsyncTimeout.kt:225)
		at okio.AsyncTimeout$Companion.b(AsyncTimeout.kt:201)
		at okio.AsyncTimeout.u(AsyncTimeout.kt:54)
		at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:144)
		at okio.RealBufferedSource.W(RealBufferedSource.kt:322)
		at okio.RealBufferedSource.a0(RealBufferedSource.kt:197)
		at okhttp3.internal.http1.HeadersReader.b(HeadersReader.kt:29)
		at okhttp3.internal.http1.Http1ExchangeCodec.d(Http1ExchangeCodec.kt:178)
		at okhttp3.internal.connection.Exchange.q(Exchange.kt:106)
		at okhttp3.internal.http.CallServerInterceptor.a(CallServerInterceptor.kt:79)
		at okhttp3.internal.http.RealInterceptorChain.a(RealInterceptorChain.kt:109)
		at okhttp3.internal.connection.ConnectInterceptor.a(ConnectInterceptor.kt:34)
		at okhttp3.internal.http.RealInterceptorChain.a(RealInterceptorChain.kt:109)
		at okhttp3.internal.cache.CacheInterceptor.a(CacheInterceptor.kt:95)
		at okhttp3.internal.http.RealInterceptorChain.a(RealInterceptorChain.kt:109)
		at okhttp3.internal.http.BridgeInterceptor.a(BridgeInterceptor.kt:83)
		at okhttp3.internal.http.RealInterceptorChain.a(RealInterceptorChain.kt:109)
		at okhttp3.internal.http.RetryAndFollowUpInterceptor.a(RetryAndFollowUpInterceptor.kt:76)
		at okhttp3.internal.http.RealInterceptorChain.a(RealInterceptorChain.kt:109)
		at okhttp3.internal.connection.RealCall.q(RealCall.kt:201)
		at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
		at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
		at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
		at java.lang.Thread.run(Thread.java:1012)

what changed 2 weeks ago?
Wanna upgrade to the latest OkHttp release? The 5.x code is stable; only the APIs are incomplete.

@swankjesse Nothing changed at all. Neither on the Android side, nor on the server.
We would definitely upgrade to a newer release, but it pulls other dependencies like the Kotlin version and requires a huge amount of work to update the whole project. We're looking for a possible workaround just to stabilize our production which, has been working correctly for more than 4 months.

There are bug fixes including for websocket race conditions in 4.12.0 that definitely could be relevant.  So it's probably worth checking if 4.12.0 fixes it.

@yschimke Thank you, I’ll try to update to 5.x.x or 4.12.0 and tell the result.

Note that you can depend on OkHttp 5.x without changing your own project’s Kotlin compiler version. The newer Kotlin stdlib interops fine with code compiled with the older compiler.

We have seen this issue as well since about the 19th of January for the React Native 0.72 version for an app with many users. Nothing was changed on the server side nor client side and all of a sudden we started to get a flood of crashes.
Yes yes, I know how it sounds that "nothing was changed". We didn't at least push any new application code but we have automatic OS updates on all the Ubuntu servers which might have caused something to change, alternatively AWS load balancers etc might have changed or OS updates on Android.
We will try to upgrade to a newer OkHttp to see if that resolves it but it would be nice to understand what actually caused it.
Fatal Exception: java.lang.IllegalStateException: Unbalanced enter/exit
       at okio.AsyncTimeout$Companion.scheduleTimeout(AsyncTimeout.kt:225)
       at okio.AsyncTimeout$Companion.access$scheduleTimeout(AsyncTimeout.kt:201)
       at okio.AsyncTimeout.enter(AsyncTimeout.kt:54)
       at okio.AsyncTimeout$source$1.read(AsyncTimeout.kt:331)
       at okio.RealBufferedSource.indexOf(RealBufferedSource.kt:427)
       at okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.kt:320)
       at okhttp3.internal.http1.HeadersReader.readLine(HeadersReader.kt:29)
       at okhttp3.internal.http1.Http1ExchangeCodec.readResponseHeaders(Http1ExchangeCodec.kt:178)
       at okhttp3.internal.connection.Exchange.readResponseHeaders(Exchange.kt:106)
       at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:79)
       at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
       at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34)
       at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
       at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
       at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
       at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
       at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
       at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
       at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
       at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
       at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
       at java.lang.Thread.run(Thread.java:1012)

There were some race condition bugs now fixed in 4.12.0. one is relevant if you use web sockets.
Otherwise it's likely to be a threading issue in your app, hopefully not since it was working before.
Server changes including any intermediate http proxies you have may change conditions so you now hit this. So client changes are not required to change the code path.

@yschimke @swankjesse
Updating from version 4.10.0 to 5.0.0-alpha.12 resolved the issue, no more crashes appear. Thank you for your help!


"Working with the garage door up" plan

Motivation
More developers need to know about what we're building in order to play with and adopt our tech. Therefore, we need to talk about what we're working on publicly. However, publishing things on the internet takes time and it's no one's full-time job at DXOS. In order to ease the burden on the team, we need a plan that we can reliably execute on that makes publishing a no-brainer.
Once we have that plan, we can more easily automate and delegate.
Finish Line

A document in GitHub that outlines the plan for communicating across channels, the specific templates of messaging for each channel, and a schedule we will follow.
Present to the team on Thursday so they know what's going on.

Out of Scope

Automation of publishing, etc

drop a .md document in dxos/spec


[4.x] - webclient.MutualTlsTest.testNoClientCert intermittently fails

Intermittent:
io.helidon.tests.integration.webclient.MutualTlsTest.testNoClientCert  Time elapsed: 0.125 s  <<< FAILURE!
java.lang.AssertionError:
Expected: a string containing "Received fatal alert: bad_certificate"

Error:  Failures:
Error:    MutualTlsTest.testNoClientCert:86
Expected: a string containing "Received fatal alert: bad_certificate"
     but: was "(client reqID: 13) Connection reset by the host"

Still failing, have trouble reproducing locally though

Still failing:
[INFO] Running io.helidon.tests.integration.webclient.MutualTlsTest
Error:  Tests run: 6, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 5.527 s <<< FAILURE! - in io.helidon.tests.integration.webclient.MutualTlsTest
Error:  io.helidon.tests.integration.webclient.MutualTlsTest.testNoClientCert  Time elapsed: 0.128 s  <<< FAILURE!
java.lang.AssertionError:

Expected: a string containing "Received fatal alert: bad_certificate"
     but: was "(client reqID: 9) Connection reset by the host"
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
	at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8)
	at io.helidon.tests.integration.webclient.MutualTlsTest.testNoClientCert(MutualTlsTest.java:86)

https://github.com/helidon-io/helidon/actions/runs/5406496548/jobs/9823436827

See also #7229

Error:    MutualTlsTest.testNoClientCert:91
Expected: a string containing "Received fatal alert: bad_certificate"
     but: was "java.net.SocketException: Broken pipe"

If i do a @RepeatedTest on the class, I can reproduce even locally (failed 2 times out of 70 invocations)

Increased priority as this is failing main pipelines too often

Closing this issue as it is fixed for now.
I am checking with JDK if the problem we see (e.g. startHandshake not failing on client) is expected or not.


[FEATURE] make releases similar to pf2e

Is your feature request related to a problem?
Not really, it's more like a convenience to have releases automation like the pf2e system. So on the manifest key you can write:
    "manifest": "https://github.com/Rayji96/foundry-V5/latest/download/system.json",

and foundry will do the rest.
Describe the solution you'd like
To achieve that, we would need some automation, for example this release workflow.
Describe alternatives you've considered
I believe the devs of pf2e have it done really well.
Additional info
This tutorial by foundry.wiki is really good

Good idea! I'll have to take a look when I get the chance or you can tackle it yourself :)

Sure! I can do it. First let me tackle the webpack/typescript/sass issue, it's a long and big one. After that I can put some thought here 💪🏼


Add prefix sum tree intro / algo description

This PR adds a lot more context / explanation of algorithms to the README, and intends to document / potentially rename some of the tree functions.
This PR is intended to be reviewed commit by commit

I'm trying to figure out why the test isn't working, it broke in my commit rename node -> nodePointer, child -> node, but I haven't yet found why

Closed in favor of #206


Takes forever to run

I intalled itorch and running the 60 minutes tutorials on itorch. Other commands runs fine. Only the trainer:train(trainset) command takes forever, which you said should take only seconds or minutes. I don't know how to fix this. Thank you very much for your help.

fixed via https://github.com/soumith/cvpr2015/issues/11


VideoChat2 Mistral Vs Vicuna Configs

Hi VidChat2 Team,
I'm looking at the Stage 2 Configs for both the Vicuna and Mistral variants. I had a few quick questions:

Why are the num_frames different between the two configs? Mistral uses num_frames=4 and Vicuna uses num_frames=8.
At inference time in the demo_mistral.ipynb, num_frames is set to 16, even though at train time, only 4 frames were used. Why does this discrepancy exist between train and inference time? Why not just set num_frames to 16 during train time as well?
What's the difference between "webvid10m_cc14m_plus" (the dataset corpus used in the Vicuna Config) and "webvid10m_cc3m" (the dataset corpus used in the Mistral Config)? Are these datasets only made up of data from the Webvid and CCM14M/CC3M? In the paper, you all mention that you also utilize 10M captions from InternVid and 2M captions from COCO and other assorted image datasets.

Good questions!

The num_frames in the configs are actually placeholders, and I changed them to 4 in the ipynb. Since UMT uses sic-cos position embedding and is pretrained with 4 frames, I set it to 4 for better position interpolation.

In the instruction tuning, we use 8 frames, but we find 16 frames are better for different tasks. We do not use 16 frames considering the efficiency and effectiveness.

You can find the data details in data.py. We use only WebVid10M and CC3M in the stage2 of Mistral, since we find that more data is even harmful, leading to about 1~2% accuracy drop in MVBench.

Thank you for the quick response! This is really helpful!

Thank you for the quick response! This is really helpful!


EtherChannel info is not consistent across platforms

When looking at the EtherChannel info on two different platforms Cat9500 and ASR1001 the naming and information in the data is not consistent.
As shown in the snippet below on the CAT9K The PortChannel consists of the 2 member ports, and the member ports includes information about the Po.
On the ASR the PortChannel has information about the member ports, but the member ports does not include Po information.
data = dev.learn('interface')
interfaces = data.to_dict()['info']
print(interfaces) # ASR:

"Port-channel4": {
  "description": "Etherchannel to SW10",
  "type": "GEChannel",
  "oper_status": "up",
  "phys_address": "00a3.8eb7.****",
  "mtu": 1508,
  "enabled": true,
  "bandwidth": 20000000,
  "mac_address": "00a3.8eb7.****",
  "port_channel": {
    "port_channel_member": true,
    "active_members": 2,
    "port_channel_member_intfs": [
      "TenGigabitEthernet0/1/4",
      "TenGigabitEthernet0/1/5"
    ],
    "num_of_pf_jumbo_supported_members": 2
  },
"TenGigabitEthernet0/1/4": {
  "description": "Link 1 to SW10",
  "type": "BUILT-IN-8X10G/1G",
  "oper_status": "up",
  "phys_address": "00a3.8eb7.****",
  "port_speed": "10000mbps",
  "mtu": 1508,
  "enabled": true,
  "bandwidth": 10000000,
  "flow_control": {
    "receive": true,
    "send": true
  },
  "mac_address": "00a3.8eb7.****",
  "auto_negotiate": false,
  "port_channel": {
    "port_channel_member": false
  },

-----------------------------------------------------------------------------------------
print(interfaces) # CAT9K:

"Port-channel1": {
  "description": "Link to SW11",
  "type": "EtherChannel",
  "oper_status": "up",
  "phys_address": "e41f.7beb.****",
  "port_speed": "1000mb/s",
  "mtu": 1500,
  "enabled": true,
  "bandwidth": 2000000,
  "flow_control": {
    "receive": true,
    "send": false
  },
  "mac_address": "e41f.7beb.****",
  "auto_negotiate": true,
  "port_channel": {
    "port_channel_member": true,
    "port_channel_member_intfs": [
      "TwentyFiveGigE1/0/1",
      "TwentyFiveGigE2/0/1"
    ]
  },
"TwentyFiveGigE1/0/1": {
  "description": "Link to SW11",
  "type": "Twenty Five Gigabit Ethernet",
  "oper_status": "up",
  "phys_address": "e41f.7beb.****",
  "port_speed": "1000mb/s",
  "mtu": 1500,
  "enabled": true,
  "bandwidth": 1000000,
  "flow_control": {
    "receive": true,
    "send": false
  },
  "mac_address": "e41f.7beb.****",
  "auto_negotiate": true,
  "port_channel": {
    "port_channel_member": true,
    "port_channel_int": "Port-channel1"
  },

Hi
Can you please share the device output to debug this issue further along with os and platform used.

Hi
Yes, what kind of device output do you want?
------------------ show version ------------------

Cisco IOS XE Software, Version 16.12.04
Cisco IOS Software [Gibraltar], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.12.4, RELEASE SOFTWARE (fc5)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2020 by Cisco Systems, Inc.
Compiled Thu 09-Jul-20 21:49 by mcpre

Cisco IOS-XE software, Copyright (c) 2005-2020 by cisco Systems, Inc.
All rights reserved.  Certain components of Cisco IOS-XE software are
licensed under the GNU General Public License ("GPL") Version 2.0.  The
software code licensed under GPL Version 2.0 is free software that comes
with ABSOLUTELY NO WARRANTY.  You can redistribute and/or modify such
GPL code under the terms of GPL Version 2.0.  For more details, see the
documentation or "License Notice" file accompanying the IOS-XE software,
or the applicable URL provided on the flyer accompanying the IOS-XE
software.

ROM: IOS-XE ROMMON
BOOTLDR: System Bootstrap, Version 17.1.1[FC2], RELEASE SOFTWARE (P)

XXXXXXXXXXX uptime is 1 year, 49 weeks, 6 days, 10 hours, 38 minutes
Uptime for this control processor is 1 year, 49 weeks, 6 days, 10 hours, 42 minutes
System returned to ROM by PowerOn
System restarted at 00:32:47 CET Thu Dec 17 2020
System image file is "bootflash:packages.conf"
Last reload reason: PowerOn

This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
<EMAIL_ADDRESS>

Technology Package License Information:

------------------------------------------------------------------------------
Technology-package                                     Technology-package
Current                        Type                       Next reboot
------------------------------------------------------------------------------
XXXXXXXXXXX

AIR License Level: XXXXXXXXXXX
Next reload AIR license Level: XXXXXXXXXXX

Smart Licensing Status: XXXXXXXXXXX

cisco C9500-48Y4C (X86) processor with 1867864K/6147K bytes of memory.
Processor board ID XXXXXXXXXXX
2 Virtual Ethernet interfaces
96 TwentyFive Gigabit Ethernet interfaces
8 Hundred Gigabit Ethernet interfaces
32768K bytes of non-volatile configuration memory.
16010152K bytes of physical memory.
11161600K bytes of Bootflash at bootflash:.
11161600K bytes of Bootflash at bootflash-2:.
1638400K bytes of Crash Files at crashinfo:.
1638400K bytes of Crash Files at crashinfo-2:.
0K bytes of WebUI ODM Files at webui:.

Base Ethernet MAC Address          : XXXXXXXXXXX
Motherboard Assembly Number        : 4873
Motherboard Serial Number          : XXXXXXXXXXX
Model Revision Number              : V02
Motherboard Revision Number        : 4
Model Number                       : C9500-48Y4C
System Serial Number               : XXXXXXXXXXX

Switch 02
---------
Base Ethernet MAC Address          : XXXXXXXXXXX
Motherboard Assembly Number        : 4873
Motherboard Serial Number          : XXXXXXXXXXX
Model Revision Number              : V02
Motherboard Revision Number        : 4
Model Number                       : C9500-48Y4C
System Serial Number               : XXXXXXXXXXX

------------------ show etherchannel summary ------------------

Flags:  D - down        P - bundled in port-channel
        I - stand-alone s - suspended
        H - Hot-standby (LACP only)
        R - Layer3      S - Layer2
        U - in use      f - failed to allocate aggregator

        M - not in use, minimum links not met
        u - unsuitable for bundling
        w - waiting to be aggregated
        d - default port

        A - formed by Auto LAG

Number of channel-groups in use: 19
Number of aggregators:           19

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1      Po1(SU)         LACP        Twe1/0/1(P)     Twe2/0/1(P)
2      Po2(SU)         LACP        Twe1/0/2(P)     Twe2/0/2(P)
5      Po5(SU)         LACP        Twe1/0/5(P)     Twe2/0/5(P)
6      Po6(SU)         LACP        Twe1/0/6(P)     Twe2/0/6(P)
8      Po8(SU)          -          Twe1/0/8(P)     Twe2/0/8(P)
9      Po9(SU)          -          Twe1/0/9(P)     Twe2/0/9(P)
10     Po10(SD)         -          Twe1/0/10(D)    Twe2/0/10(D)
11     Po11(SD)         -          Twe1/0/11(D)    Twe2/0/11(D)
12     Po12(SD)         -          Twe1/0/12(D)    Twe2/0/12(D)
36     Po36(SU)        LACP        Twe1/0/36(P)    Twe2/0/36(P)
38     Po38(SU)        LACP        Twe1/0/38(P)    Twe2/0/38(P)
39     Po39(SU)        LACP        Twe1/0/39(P)    Twe2/0/39(P)
40     Po40(SU)         -          Twe1/0/40(P)    Twe2/0/40(P)
41     Po41(SU)        LACP        Twe1/0/41(P)    Twe2/0/41(P)
42     Po42(SU)         -          Twe1/0/42(P)    Twe2/0/42(P)
43     Po43(SU)         -          Twe1/0/43(P)    Twe2/0/43(P)
44     Po44(SU)        LACP        Twe1/0/44(P)    Twe2/0/44(P)
46     Po46(SU)        LACP        Twe1/0/46(P)    Twe2/0/46(P)
47     Po47(SU)        LACP        Twe1/0/47(P)    Twe2/0/47(P)

#ASR:
------------------ show version ------------------

Cisco IOS XE Software, Version 16.05.01b
Cisco IOS Software [Everest], ASR1000 Software (X86_64_LINUX_IOSD-UNIVERSALK9-M), Version 16.5.1b, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2017 by Cisco Systems, Inc.
Compiled Tue 11-Apr-17 17:00 by mcpre

Cisco IOS-XE software, Copyright (c) 2005-2017 by cisco Systems, Inc.
All rights reserved.  Certain components of Cisco IOS-XE software are
licensed under the GNU General Public License ("GPL") Version 2.0.  The
software code licensed under GPL Version 2.0 is free software that comes
with ABSOLUTELY NO WARRANTY.  You can redistribute and/or modify such
GPL code under the terms of GPL Version 2.0.  For more details, see the
documentation or "License Notice" file accompanying the IOS-XE software,
or the applicable URL provided on the flyer accompanying the IOS-XE
software.

ROM: IOS-XE ROMMON

XXXXXXXXXXX uptime is 13 weeks, 2 days, 7 minutes
Uptime for this control processor is 13 weeks, 2 days, 9 minutes
System returned to ROM by reload
System restarted at 12:02:35 CEST Tue Aug 30 2022
System image file is "bootflash:asr1000-universalk<IP_ADDRESS>b.SPA.bin"
Last reload reason: PowerOn

This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.

A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html

If you require further assistance please contact us by sending email to
<EMAIL_ADDRESS>

cisco ASR1001-HX (1SR) processor (revision 1SR) with 6835831K/6147K bytes of memory.
Processor board ID XXXXXXXXXXX
Crypto Hardware Module absent
8 Gigabit Ethernet interfaces
8 Ten Gigabit Ethernet interfaces
32768K bytes of non-volatile configuration memory.
16777216K bytes of physical memory.
30056447K bytes of eUSB flash at bootflash:.
0K bytes of SATA hard disk at harddisk:.
0K bytes of WebUI ODM Files at webui:.

Configuration register is 0x2102

#show etherchan summ
Flags:  D - down        P/bndl - bundled in port-channel
        I - stand-alone s/susp - suspended
        H - Hot-standby (LACP only)
        R - Layer3      S - Layer2
        U - in use      f - failed to allocate aggregator

        M - not in use, minimum links not met
        u - unsuitable for bundling
        w - waiting to be aggregated
        d - default port

Number of channel-groups in use: 3
Number of aggregators:           3

Group  Port-channel  Protocol    Ports
------+-------------+-----------+-----------------------------------------------
1       Po1(RU)         LACP     Te0/1/1(bndl) Te0/1/2(bndl)
2       Po2(RU)         LACP     Te0/1/0(bndl)
4       Po4(RU)         LACP     Te0/1/4(bndl) Te0/1/5(bndl)

RU - L3 port-channel UP State
SU - L2 port-channel UP state
P/bndl -  Bundled
S/susp  - Suspended

One of the other issues I have is that the type is different on them. On the Cat9k the type is EtherChannel and on the ASR it is GEChannel or 10GChannel. But I guess that is the devices information about the hardware.

In the device output which you had shared, I don't see the GEChannel or 10GChannel in the output.
Please share the device output of the parser command which you are trying. So that I can verify the same and share how the type is being processed.
Or you can search for the command which you are trying in the genieparser repository, and try adding print to see how it is done.

I am not sure what you mean about the output from the parser command. Could you help me understand that?
The hardware type on the ASR is actually 10GEChannel and GEChannel.
#show inter po1
Port-channel1 is up, line protocol is up
  Hardware is 10GEChannel, address is xxxx.xxxx.xxxx (bia xxxx.xxxx.xxxx)
  Description: EPL Circuits
  MTU 2000 bytes, BW 20000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 10/255, rxload 9/255
  Encapsulation 802.1Q Virtual LAN, Vlan ID  1., loopback not set
  Keepalive set (10 sec)
  ARP type: ARPA, ARP Timeout 04:00:00
    No. of active members in this channel: 2
        Member 0 : TenGigabitEthernet0/1/1 , Full-duplex, 10000Mb/s
        Member 1 : TenGigabitEthernet0/1/2 , Full-duplex, 10000Mb/s
    No. of PF_JUMBO supported members in this channel : 2
  Last input 00:00:00, output never, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/750/0/141 (size/max/drops/flushes); Total output drops: 903627409
  Queueing strategy: Class-based queueing
  Output queue: 0/80 (size/max)
  30 second input rate 663664000 bits/sec, 95239 packets/sec
  30 second output rate 807797000 bits/sec, 117188 packets/sec
<PHONE_NUMBER>15 packets input,<PHONE_NUMBER>03693 bytes, 0 no buffer
     Received 2646202 broadcasts (0 IP multicasts)
     0 runts, 0 giants, 0 throttles
     2 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 142508288 multicast, 0 pause input
<PHONE_NUMBER>12 packets output,<PHONE_NUMBER>29672 bytes, 0 underruns
     0 output errors, 0 collisions, 0 interface resets
     12005295 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out

Just to be clear, my main issue is not that the hardware type is different on the platforms as it shows the actual hardware type as reported by the network device.
My main issue is that the member interfaces does not reference the LAG interface on some implementations.

Can you elaborate on what you mean by member interfaces does not reference the LAG interface on some implementations

Hi @Taarini,
Yes, if you look at the very first example of the output i gave, one device did not include any LAG information in the memberport:
"TenGigabitEthernet0/1/4": {
  "description": "Link 1 to SW10",
  "type": "BUILT-IN-8X10G/1G",
  "oper_status": "up",
  "phys_address": "00a3.8eb7.****",
  "port_speed": "10000mbps",
  "mtu": 1508,
  "enabled": true,
  "bandwidth": 10000000,
  "flow_control": {
    "receive": true,
    "send": true
  },
  "mac_address": "00a3.8eb7.****",
  "auto_negotiate": false,
  "port_channel": {
    "port_channel_member": false
  },

Where as on the other device type it did:
"TwentyFiveGigE1/0/1": {
  "description": "Link to SW11",
  "type": "Twenty Five Gigabit Ethernet",
  "oper_status": "up",
  "phys_address": "e41f.7beb.****",
  "port_speed": "1000mb/s",
  "mtu": 1500,
  "enabled": true,
  "bandwidth": 1000000,
  "flow_control": {
    "receive": true,
    "send": false
  },
  "mac_address": "e41f.7beb.****",
  "auto_negotiate": true,
  "port_channel": {
    "port_channel_member": true,
    "port_channel_int": "Port-channel1"
  },

Okay. I think it could be due to some regex related issue.
Can you share the device output of show interfaces so that i can verify what is missing to be parsed

Hi @Taarini
This is the show interface for a Portchannel and the member interfaces on both the ASR and the CAT9K
#ASR

ASR01#show inter po1
Port-channel1 is up, line protocol is up
  Hardware is 10GEChannel, address is 00a3.xxxx.xxxx (bia 00a3.xxxx.xxxx)
  Description: ******************************************
  MTU 2000 bytes, BW 20000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 7/255, rxload 3/255
  Encapsulation 802.1Q Virtual LAN, Vlan ID  1., loopback not set
  Keepalive set (10 sec)
  ARP type: ARPA, ARP Timeout 04:00:00
    No. of active members in this channel: 2
        Member 0 : TenGigabitEthernet0/1/1 , Full-duplex, 10000Mb/s
        Member 1 : TenGigabitEthernet0/1/2 , Full-duplex, 10000Mb/s
    No. of PF_JUMBO supported members in this channel : 2
  Last input 00:00:00, output never, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/750/0/143 (size/max/drops/flushes); Total output drops:<PHONE_NUMBER>
  Queueing strategy: Class-based queueing
  Output queue: 0/80 (size/max)
  30 second input rate 287982000 bits/sec, 59360 packets/sec
  30 second output rate 622439000 bits/sec, 89991 packets/sec
<PHONE_NUMBER>85 packets input,<PHONE_NUMBER>33563 bytes, 0 no buffer
     Received 2900541 broadcasts (0 IP multicasts)
     0 runts, 0 giants, 0 throttles
     6 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 162988114 multicast, 0 pause input
<PHONE_NUMBER>56 packets output,<PHONE_NUMBER>54891 bytes, 0 underruns
     0 output errors, 0 collisions, 0 interface resets
     13597351 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out
ASR01#show inter Te0/1/1
TenGigabitEthernet0/1/1 is up, line protocol is up
  Hardware is BUILT-IN-8X10G/1G, address is 00a3.xxxx.xxxx (bia 00a3.xxxx.xxxx)
  Description: ********************************************
  MTU 2000 bytes, BW 10000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 8/255, rxload 5/255
  Encapsulation ARPA, loopback not set
  Keepalive not supported
  Full Duplex, 10000Mbps, link type is force-up, media type is 10GBase-LR
  output flow-control is on, input flow-control is on
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:19, output 00:00:05, output hang never
  Last clearing of "show interface" counters 15w6d
  Input queue: 0/375/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 196715000 bits/sec, 38886 packets/sec
  5 minute output rate 324134000 bits/sec, 45206 packets/sec
<PHONE_NUMBER>95 packets input,<PHONE_NUMBER>88810 bytes, 0 no buffer
     Received 2287350 broadcasts (0 IP multicasts)
     0 runts, 0 giants, 0 throttles
     1 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 57480110 multicast, 0 pause input
<PHONE_NUMBER>47 packets output,<PHONE_NUMBER>40754 bytes, 0 underruns
     0 output errors, 0 collisions, 2 interface resets
     0 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out
ASR01#show inter Te0/1/2
TenGigabitEthernet0/1/2 is up, line protocol is up
  Hardware is BUILT-IN-8X10G/1G, address is 00a3.xxxx.xxxx (bia 00a3.xxxx.xxxx)
  Description: *************************************************
  MTU 2000 bytes, BW 10000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 7/255, rxload 2/255
  Encapsulation ARPA, loopback not set
  Keepalive not supported
  Full Duplex, 10000Mbps, link type is force-up, media type is 10GBase-LR
  output flow-control is on, input flow-control is on
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:27, output 00:00:04, output hang never
  Last clearing of "show interface" counters 15w6d
  Input queue: 0/375/0/0 (size/max/drops/flushes); Total output drops: 0
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 90816000 bits/sec, 20383 packets/sec
  5 minute output rate 295096000 bits/sec, 44372 packets/sec
<PHONE_NUMBER>79 packets input,<PHONE_NUMBER>53423 bytes, 0 no buffer
     Received 613195 broadcasts (0 IP multicasts)
     0 runts, 0 giants, 0 throttles
     5 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 105508280 multicast, 0 pause input
<PHONE_NUMBER>22 packets output,<PHONE_NUMBER>57391 bytes, 0 underruns
     0 output errors, 0 collisions, 2 interface resets
     0 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out

# Cat9k

Cat9k#show inter po1
Port-channel1 is up, line protocol is up (connected)
  Hardware is EtherChannel, address is e41f.xxxx.xxxx (bia e41f.xxxx.xxxx)
  Description: *************************************
  MTU 1500 bytes, BW 2000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 28/255, rxload 9/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 1000Mb/s, link type is auto, media type is N/A
  input flow-control is on, output flow-control is unsupported
  Members in this channel: Twe1/0/1 Twe2/0/1
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 1y16w, output 00:00:01, output hang never
  Last clearing of "show interface" counters never
  Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 112101296
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 74151000 bits/sec, 11318 packets/sec
  5 minute output rate 225004000 bits/sec, 57490 packets/sec
<PHONE_NUMBER>12 packets input,<PHONE_NUMBER>08498 bytes, 0 no buffer
     Received<PHONE_NUMBER> broadcasts (923783109 multicasts)
     0 runts, 160 giants, 0 throttles
     160 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 923783109 multicast, 0 pause input
     0 input packets with dribble condition detected
<PHONE_NUMBER>845 packets output,<PHONE_NUMBER>08226 bytes, 0 underruns
     Output<PHONE_NUMBER> broadcasts (0 multicasts)
     0 output errors, 0 collisions, 1 interface resets
     0 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out
Cat9k#show interfaces Twe1/0/1
TwentyFiveGigE1/0/1 is up, line protocol is up (connected)
  Hardware is Twenty Five Gigabit Ethernet, address is e41f.xxxx.xxxx (bia e41f.xxxx.xxxx)
  Description: *******************************************
  MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 48/255, rxload 9/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 1000Mb/s, link type is auto, media type is 10/100/1000BaseTX SFP
  input flow-control is on, output flow-control is off
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:17, output 00:00:04, output hang never
  Last clearing of "show interface" counters 2y0w
  Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 55243688
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 36845000 bits/sec, 5836 packets/sec
  5 minute output rate 189595000 bits/sec, 52572 packets/sec
<PHONE_NUMBER>88 packets input,<PHONE_NUMBER>18203 bytes, 0 no buffer
     Received 664873832 broadcasts (525170180 multicasts)
     0 runts, 73 giants, 0 throttles
     73 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 525170180 multicast, 0 pause input
     0 input packets with dribble condition detected
<PHONE_NUMBER>70 packets output,<PHONE_NUMBER>83965 bytes, 0 underruns
     Output<PHONE_NUMBER> broadcasts (0 multicasts)
     0 output errors, 0 collisions, 2 interface resets
     0 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output
     0 output buffer failures, 0 output buffers swapped out
Cat9k#show interfaces Twe2/0/1
TwentyFiveGigE2/0/1 is up, line protocol is up (connected)
  Hardware is Twenty Five Gigabit Ethernet, address is e41f.xxxx.xxxx (bia e41f.xxxx.xxxx)
  Description: *******************************************
  MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,
     reliability 255/255, txload 9/255, rxload 9/255
  Encapsulation ARPA, loopback not set
  Keepalive set (10 sec)
  Full-duplex, 1000Mb/s, link type is auto, media type is 10/100/1000BaseTX SFP
  input flow-control is on, output flow-control is off
  ARP type: ARPA, ARP Timeout 04:00:00
  Last input 00:00:20, output 00:00:05, output hang never
  Last clearing of "show interface" counters 2y0w
  Input queue: 0/2000/0/0 (size/max/drops/flushes); Total output drops: 56857796
  Queueing strategy: fifo
  Output queue: 0/40 (size/max)
  5 minute input rate 37211000 bits/sec, 5471 packets/sec
  5 minute output rate 35439000 bits/sec, 4944 packets/sec
<PHONE_NUMBER>27 packets input,<PHONE_NUMBER>78422 bytes, 0 no buffer
     Received 515157376 broadcasts (398613593 multicasts)
     0 runts, 87 giants, 0 throttles
     87 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored
     0 watchdog, 398613593 multicast, 0 pause input
     0 input packets with dribble condition detected
<PHONE_NUMBER>24 packets output,<PHONE_NUMBER>29176 bytes, 0 underruns
     Output<PHONE_NUMBER> broadcasts (0 multicasts)
     0 output errors, 0 collisions, 2 interface resets
     0 unknown protocol drops
     0 babbles, 0 late collision, 0 deferred
     0 lost carrier, 0 no carrier, 0 pause output

There isn't a information on other interface like below
ASR01#show inter po1
  ARP type: ARPA, ARP Timeout 04:00:00
    No. of active members in this channel: 2
        Member 0 : TenGigabitEthernet0/1/1 , Full-duplex, 10000Mb/s
        Member 1 : TenGigabitEthernet0/1/2 , Full-duplex, 10000Mb/s
    No. of PF_JUMBO supported members in this channel : 2

That is the reason in some of the other interface output, you see something like below,
'TenGigabitEthernet0/1/1': {'port_channel': {'port_channel_member': False}

Hi
Did you understand the output info which I had shared you above

So my issue is that the parent interface(PortChannel) contains information about the child interfaces in the configuration. This is true for both the Cat9k and ASR.
But the child interfaces only contains information about the parent interface on the Cat9k but not the ASR.
See my first post of the pyats information on the child interfaces.
Cat9k#show inter po1
Port-channel1 is up, line protocol is up (connected)
  Members in this channel: Twe1/0/1 Twe2/0/1

ASR01#show inter po1
Port-channel1 is up, line protocol is up
    No. of active members in this channel: 2
        Member 0 : TenGigabitEthernet0/1/1 , Full-duplex, 10000Mb/s
        Member 1 : TenGigabitEthernet0/1/2 , Full-duplex, 10000Mb/s
    No. of PF_JUMBO supported members in this channel : 2

Hi
Sorry for the delay in responding,
Right now we don't have support specific to platform ASR and CAT9K
Since genieparser is community driven, request you to add support for the command in both the platform.
Below is the link to the steps in creating a new parser, https://pubhub.devnetcloud.com/media/pyats-development-guide/docs/writeparser/writeparser.html
If you need any assistance in creating a PR for the above, I'm very happy to assist you through the process of approval

Hi @Taarini
I am afraid I do not have the skillset to contribute with a parser.
I will accept that ASR's are not supported.
Thank you for the information.


Introduced a new macro OSSL_DISPATCH_END which refers to the end of OSSL_DISPATCH arrays.

Checklist

[x] documentation is added or updated
[x] tests are added or updated

No need to be sorry, nobody told you about the preferred work flow 😃

Thanks for being kind :)

My bad, I had to reset and force push because the first commit message got a typo. Not a git expert :(

@paulidale @levitte please look again

There is a failure in check_docs CI. Need to fix that?

Yes you do, sorry for missing out on that earlier.
Please update util/other.syms by adding the following line among the defines already present:
OSSL_DISPATCH_END                                                      define

Yes you do, sorry for missing out on that earlier.
Please update util/other.syms by adding the following line among the defines already present:
OSSL_DISPATCH_END                                                      define

Ok cool. Done.

This pull request is ready to merge

Merged to master branch. Thank you for your contribution.

Thanks for all your support 👍


task changes state from KILLED to STARTED

I submitted a task and see the following behavior in my logs:
2016-11-08 14:24:25.990 INFO  [qtp294049327-27] i.github.retz.scheduler.NaivePlanner - Job 1(task retz-foobar-id-1) is to be ran as '<my-cmd>' at Slave efb5dd1d-0138-4004-9b1f-5c426be0c221-S2
2016-11-08 14:24:25.996 INFO  [Thread-34] i.github.retz.scheduler.NaivePlanner - Job 1(task retz-foobar-id-1) is to be ran as '<my-cmd>' at Slave 9284b207-a55f-4f34-8446-7a0a26bf4e8b-S5
2016-11-08 14:24:25.998 INFO  [Thread-34] io.github.retz.db.Database - TaskId of id=1: retz-foobar-id-1 / retz-foobar-id-1
2016-11-08 14:24:26.007 INFO  [qtp294049327-27] io.github.retz.db.Database - TaskId of id=1: retz-foobar-id-1 / retz-foobar-id-1
2016-11-08 14:24:26.014 INFO  [Thread-34] io.github.retz.db.Database - Job (id=1) status updated to STARTING
2016-11-08 14:24:26.016 INFO  [Thread-34] i.g.retz.scheduler.RetzScheduler - 1 accepted, 0 declined (0 offers back in stock)
2016-11-08 14:24:26.024 INFO  [qtp294049327-27] io.github.retz.db.Database - Job (id=1) status updated to STARTING
2016-11-08 14:24:26.026 INFO  [qtp294049327-27] i.g.retz.scheduler.RetzScheduler - 1 accepted, 0 declined (1 offers back in stock)
2016-11-08 14:24:26.027 INFO  [qtp294049327-27] io.github.retz.web.WebConsole - Job '<my-cmd>' at foobar has been scheduled at 2016-11-08T14:24:25.883+09:00.
2016-11-08 14:24:26.051 INFO  [Thread-35] i.g.retz.scheduler.RetzScheduler - Status update of task retz-foobar-id-1: TASK_ERROR / Task has duplicate ID: retz-foobar-id-1
2016-11-08 14:24:26.091 INFO  [Thread-35] io.github.retz.db.Database - Job (id=1) status updated to KILLED
2016-11-08 14:24:26.092 INFO  [Thread-35] io.github.retz.scheduler.JobQueue - Job id=1 has failed: Task has duplicate ID: retz-foobar-id-1
2016-11-08 14:24:26.103 INFO  [qtp294049327-28] io.github.retz.web.WebConsole - GET /job/1 from <IP_ADDRESS> Java/1.8.0_91
2016-11-08 14:24:26.418 INFO  [Thread-36] i.g.retz.scheduler.RetzScheduler - Status update of task retz-foobar-id-1: TASK_RUNNING /
2016-11-08 14:24:26.467 INFO  [Thread-36] io.github.retz.db.Database - Job (id=1) status updated to STARTED

I understand that a duplicate ID may kill the job, and actually the client gets an error when submitting that job (which is good), but the job is still submitted to the cluster and executed there without any problems. I guess the status should not change from KILLED to anything else.

Possible scenario:

Jetty thread processing WebConsole::schedule inserts a job (say, id=1) with JobQueue.push
RetzExecutor.resourceOffer being called with offer B and  fetches jobs with JobQueue.findFit getting a job (id=1)
Jetty thread enters scheduler.get().maybeInvokeNow(driver.get(), job);  and gets a job (id=1)
Jetty thread schedules job (id=1) with a stocked offer (say 'offer A'), updating a job as STARTED
RetzExecutor thread schedules a job (id=1) with an offered offer B updated a job as STARTED again.

Workaround is to set retz.max.stock = 0 in retz.properties. This prevents any resource stocking (caching), while job latency might be a bit longer as it have to wait for next resource offer.

e64dafad434aecd7ca is the fix for this.

For now I'm closing this issue. The fix for this will be included in 0.0.32, which will be released soon. Feel free to reopen this issue if this is not fixed with 0.0.32 (or later).