[Site] Search Icon overlays Dark Mode toggle in mobile view

Current State
Description of the current state/issue:
The Search icon overlays, the Dark Mode toggle button in Mobile View in the navbar.
Link to the page: https://apisix.apache.org/docs/apisix/getting-started/README/
Screenshots (if relevant):

Desired State
Description of the change you are proposing:
Adjusting both the objects, so that they don't overlay each other
Would you like to fix this issue?
Yes! Count me in

@yzeng25 @jiangfucheng @SylviaBABY

@Keshav-0907 thanks for your contribution!

@SylviaBABY @yzeng25
While setting up the project locally got this error repeatedly. Can you please help me find a solution for this ??

@SylviaBABY @yzeng25
While setting up the project locally got this error repeatedly. Can you please help me find a solution for this ??

cc @SkyeYoung

@Keshav-0907 Hi, Sorry to reply to you so late (I've been getting a lot of emails lately, so I'm missing some).
What system are you using? Since I only develop on Linux, there may be some compatibility issues.

No worries @SkyeYoung
I am using a M1 Chip -  Macbook

Okay, I'll go find a Macbook and try it out a little later after I post this comment

Okay, Thank you :)

Sorry, last weekend I had some other things to do at the last minute. I will try today.

@Keshav-0907 Hi, it looks very strange. I didn't find the issue described in your image, but instead encountered some other problems (which I have addressed in this PR).
Could you please try manually accessing the path as described in the command?

@SkyeYoung Hi, it looks like the issue with the search icon overlapping the theme toggle button is only happening when initially opening the page on desktop and switching to mobile view. However, the problem is resolved when you refresh the page after the switch or when initially opening it on mobile devices. When switching to the mobile view, the toggle button is moving to the collapsed side menu, but it's not removed or hidden from the right-side nav, as shown in the gif below.

Hi, It was only a problem in the docs route and I've fixed the issue locally and would love to contribute. Could you please assign this task to me for confirmation? Thank you! 😊


updated freesmug-chromium (49.0.2623.75)

Thank you for the contribution. It was merged directly as 937e167ea27c1fdcb8d90bf7fc17f3de4fa44c5b to keep commit history cleaner. Your contribution is still credited to you.


protoscan > use x86asm.SymLookup instead of lookupFunc

When trying to build protein with Go 1.9.2 on macOS 10.13, I get the error:
$ go build ./...
# github.com/znly/protein/internal/objfile
internal/objfile/disasm.go:313:25: cannot use lookup (type lookupFunc) as type x86asm.SymLookup in argument to x86asm.GoSyntax

Recent versions of golang.org/x/arch/x86/x86asm define an explicit SymLookup type. Using this fixes the compile error.

Hmm, looks like this PR needs more work to be compatible with different Go versions.

Hmm that's weird, I'm not having any issues with Go 1.9.2 on either MacOS 10.12 or Linux (c.f. travis).
Thanks for the report, I'll try to get ahold of a MacOS 10.13 environment ASAP so I can get back to you.

Looks like everything is compiling & running properly for macOS10.13.1 on my end; so I'm guessing the issue is coming from someplace else.
Are you testing on latest master or a specific tag?
Did you try running make deps first?
Also I've updated the makefile so as to keep 3rd-party tooling up-to-date too, just in case.

Thanks! Running make deps fixes it. Without this, it was building against my locally-installed golang.org/x/arch/x86/x86asm rather than the vendored version.


refactor(2.0): Add PathValidator

Path must be:

Required
String
Relative (to parent package's install path)
Doesn't contains invalid string like .. or \0 (null byte) - to prevent Directory Traversal

I'm new to security stuff. Any advices on this would be nice.

Just some changes to examples to not include system files if possible.

I replaced them

Question, will the unpacking process be able to overwrite files?

No, it is not able to overwrite project's and library's files.
For example:

Can't declare "extra file" to project to overwrite vendor/ directory
Can't declare "extra file" to library to ovewrite src/ directory

Here is the test cases for it https://github.com/pact-foundation/composer-downloads-plugin/pull/24
This is a good question. It remind me that I forgot to handle this case in the new refactoring code.


hakrawler: 2.0 -> 2.1

Description of changes
https://github.com/hakluke/hakrawler/releases/tag/2.1

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 182927 run on x86_64-linux 1

1 package built:

hakrawler


Application links still exist after unlinking it

After unlinking the discord application link from desmos, The connections still include my discord link.

Closing this in favor of desmos-labs/djuno#8 since it's that tool that handles Desmos-specific things.


Add runtests.sh #32

Fixes #32
Fixes #31

There is another PR #29 ahead of the queue that adds the missing .sh file.

Can commit b651d6b be cherrypicked and pushed to master? This wrong command line syntax is giving everyone a lot of problems running the tests.

Both fixed in separate PRs. Closing.


⚠ Fortnite has degraded performance

In 5a4ac47, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1675 ms

Resolved: Fortnite performance has improved in 0c8b2d3.


Time to move to the plugin architecture

After a lot of ground work and prototyping its time to take on the plugin architecture of the project. Need to be able to define simple rules as a set of simple plugins. Also need to be able to extend the memory manager through plugins to assemble event type specific state caches.
Looking at: http://yapsy.sourceforge.net/ for its simplicity and lack of external dependencies.

After looking at various ways to implement a plugin architecture, I have decided to add more than just plugins to the projects.
I have tested various capabilities (including plugins) with the Cement framework: http://builtoncement.com/
I believe that the overall project would benefit from the platform capabilities of its framework - even though some configuration specifics I still need to iron out or extend the Cement framework.
I was also able to successfully merge the Asyncio based event handler with Cement - a question I raised a few months ago: http://stackoverflow.com/questions/28601144/combining-python-cement-with-asyncio.
I will be working on a combined asycio/cement application class to combine the frameworks and capabilities and to hide much of the complexity and how-to from the individual services and apps.

Finally got time to start working on the cement integration. I created a new branch with this commit: e5a362ab3bc36dd31eb4ac3b5e0401313ee97170

Basics have been implemented. Currently waiting on a pull request for the cement framework to get accepted to allow plugins to be asynchronous and multithreaded.
https://github.com/datafolklabs/cement/pull/327

Enhancement to Cement PR has been accepted and merged. Should be in the next release.
datafolklabs/cement#327
Time to take another look at the plugin architecture we have and build it out.


Added ensam-casa.txt

Hi,
I am engineering student in National School of arts and crafts in Casablanca, Morocco.
I wish to enlist my school in the list of schools supported by Jetbrains to have access to student licences for Jetbrains products.
My school's website is: http://ensam-casa.ma
Thank you.
Kind Regards

@abdoMarrouss Thank you for your patience while waiting for a review and processing your request. Pull request merged.

Thank you very much.


[mdDatePicker] Swipe capabilities; button 'Today'; support for min and max date; [mdTimePicker] Button 'Now'; directive on input[type="time"]

Please consider to release a new version with these changes.

Added 'Today' and 'Now' buttons in mdDatePickers and mdTimePicker

There was an issue calculating month's view days (in mdDatePicker): now fixed.

1, please merge ASAP. @simonered what is the syntax for max/min dates?

:+1:

The syntax is md-min-date and md-max-date and expect a js date as input.

I'm a bit busy in these days.
I'll merge as soon as possible with new features like date filtering
Hold on :)


OnPress on victory bar not working

Bugs and Questions
Checklist

[X] This is a victory-native specific issue. (Issues that also appear in victory should be opened here)

[X] I have read through the FAQ and Guides before asking a question

[X] I am using the latest version of victory-native

[X] I have checked to make sure that my versions of react-native and react-native-svg are compatible with this version of victory-native. Read about version requirements

[X] I've searched open issues to make sure I'm not opening a duplicate issue

The Problem
Reopening this issue:
https://github.com/FormidableLabs/victory-native/issues/507
The problem still exists. Even though @vinod-designer1  had found a great workaround (https://snack.expo.io/@kaesian/victory-native-onpress-events-issue), the problem exists.
Note: On the simulator, onPress works as expected, on iPhone it doesn't. Tested on iOS 13.3.

Hi,
+1 same issue.
Have you find a solution ?
Thank you in advance.


Category view

addresses #283

Something weird is happening on the by category page. It appears it's not showing all of the druggable gene categories that have a result in them. The live site shows 16 druggable gene categories but I'm only seeing 11 on this when viewing that tab on this PR.
Also, do we want to consider sorting the druggable gene categories either alphabetically or ordering by the number of genes from the query within them?

I'll sort the by category results by number of genes and leave browse categories in alphabetical order.
I'm currently looking into the by category issue - I'm seeing the same thing, but I'm wondering if this is a database thing?

seems like there is a view bug and just an underlying difference in the database.

The visual bug is fixed, pushing commit to this PR.
There doesn't appear to be anything funky going on, assuming my db is in the state we want it. I went through psql and ran SELECT * FROM genes INNER JOIN gene_categories_genes ON genes.id = gene_categories_genes.gene_id INNER JOIN gene_claim_categories on gene_categories_genes.gene_claim_category_id = gene_claim_categories.id WHERE genes.name= for each of the uniquely matching genes in the example search and it looks like all the categories are being represented.

I can see all of the results now. However, I'm still not seeing any sort of sorting on this tab, either by alphabetically or by the number of results.


Invalid dynamic collection binding and validation

@dougbu asked to create new issue in discussion #2268. Current CollectionModelBinder can't properly bind collections with dynamic indexes. It returns invalid results in 2 cases.
1. I've class with collection property:
class RootObject
{
	public IList<AnotherObject> Collection { get; set; }
	// other code goes here
}

class AnotherObject
{
	public string Name { get; set; }
}

Binding form data:
Collection.index = key1,key2
Collection[key1].Name = name1
Collection[key2].Name = name2

If I try to bind RootObject then Collection property is bound successfully, but ModelState contains unvalidated states for Collection[key1].Name and Collection[key2].Name:
var model = new RoomObject();
TryUpdateModel(model);
/// ModelState.IsValid returns false - wrong value.

2. I've the same classes. If I try to bind collection of AnotherObject directly with prefix, result collection is still empty:
var collection = new List<AnotherObject>();
TryUpdateModel(collection, "Collection");
// collection is still empty, even if there is data

I'm using latest beta5 MVC version.

@anfomin Are you literally sending Collection.index = key1,key2 or is this just a shorthand for sending Collection.index = key1 and then Collection.index = key2?

@dougbu We should at least be consistent with the MVC 5 behavior.

@danroth27 yes, in previous message I wrote a shorthand. I have 2 inputs: Collection.index = key1 and Collection.index = key2.

@anfomin could you please upload a small sample of what you're trying to do?  Want to avoid testing a slightly different scenario.
A GitHub repository is easiest for me but feel free to send a Zip file offline or whatever.

@dougbu ok, I'll prepare sample tomorrow.

@dougbu sample is ready: https://github.com/anfomin/MvcCollectionBindingSample

thanks @anfomin.  I am able to reproduce the tightly-related issues you reported.  both appear to be regressions compared to MVC 5.
one workaround for the ModelState.IsValid issue is to remove the "Collection.index" fields entirely.  instead name the fields using the C# indices e.g.
for (var index = 0; index < Model.Collection.Count; index++)
{
    @Html.LabelFor(model => model.Collection[index])
    <div>
        @Html.EditorFor(model => model.Collection[index])
        @Html.ValidationMessageFor(model => model.Collection[index])
    </div>
}

have not found a workaround for the problem binding directly to a collection (except not doing that at all).

@dougbu I can't use workaround with numeric indexes because collection items can be added or deleted with JS in real app. So resulting bound collection will have gaps in indexes. I'm using custom IModelBinder until issue is fixed.

the root cause of the first problem @anfomin reported is model binding adds ModelState entries for the Guid-indexed collection entries e.g.

but these remain Unvalidated because validation checks the created model and its int-indexed entries e.g.

(all entries above except Collection[d6dc29c5].Name and Collection[8d51753e].Name are either Skipped (e.g. TempData) or Valid.)
in MVC 5, the final ModelState instead looks like the following and both entries are Valid:

the root cause of the second problem is MVC 6 lacks support for copying entries into an existing collection.  properties such as public IList<AnotherObject> Collection { get; } = new List<AnotherObject>(); and calls such as TryUpdateModel(collection, "Collection"); work fine in MVC 5 but MVC 6 does not support either case.

addressed item (2), the lack of support for copying entries into a collection in 3fd4991

@harshgMSFT if you get back to this before I do, I have a branch and a few thoughts to share...


bootengine: fix kmod-static-nodes

Update the bootengine commit id to use the fix from: https://github.com/flatcar/bootengine/pull/85
Fixes: https://github.com/flatcar/Flatcar/issues/1336
Testing done
[Describe the testing you have done before submitting this PR. Please include both the commands you issued as well as the output you got.]

[ ] Changelog entries added in the respective changelog/ directory (user-facing change, bug fix, security fix, update)
[ ] Inspected CI output for image differences: /boot and /usr size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.

Note that this issue is present also on Flatcar versions up to 3510 and maybe older versions (I could track it down up to 3510 using a Hyper-V vm. 3374 did not properly boot because of ignition/cloud-init implementation).

We can do a backport by picking the bootengine commit into backport branches like flatcar-3510-backport and then using the latest commit of these branches in the ebuild file when backporting this change.

We can do a backport by picking the bootengine commit into backport branches like flatcar-3510-backport and then using the latest commit of these branches in the ebuild file when backporting this change.

I suggest to have this change tested better (a few test iterations of the HEAD) before backporting it to the beta / stable branches. For the moment, I am the only person affected by the kubevirt issue.
Thanks.

Note that this PR has not been backported yet and only Flatcar version >= 3913 has the fix.


Move FindNodeAddresses API to node object

FindNodeAddresses is used to fetch the CalicoNodeIP/InternalIP/ExternalIP given the IP type. Moving this API to Node object so that this can be used by other modules.
Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

None required

@sridhartigera we don't normally attach helper functions to the v3 API objects, instead we use package-level functions that accept a v3 API object as an input.
Could you adjust this PR to match that approach? This will be important in the near future, as I am planning on moving the v3 structure definitions to a new repository (and I don't want to bring function logic with them).

Moving this API to Node object so that this can be used by other modules.

@sridhartigera which other modules are you referring to? Who else needs this logic?

Moving this API to Node object so that this can be used by other modules.

@sridhartigera which other modules are you referring to? Who else needs this logic?

I am planning to use this logic in felix, specifically in calc/l3_route_resolver.

@sridhartigera we don't normally attach helper functions to the v3 API objects, instead we use package-level functions that accept a v3 API object as an input.
Could you adjust this PR to match that approach? This will be important in the near future, as I am planning on moving the v3 structure definitions to a new repository (and I don't want to bring function logic with them).

you mean something like this.
func FindNodeAddress(node *v3.Node, ipType String)?

@sridhartigera we don't normally attach helper functions to the v3 API objects, instead we use package-level functions that accept a v3 API object as an input.
Could you adjust this PR to match that approach? This will be important in the near future, as I am planning on moving the v3 structure definitions to a new repository (and I don't want to bring function logic with them).

you mean something like this.
func FindNodeAddress(node *v3.Node, ipType String)?
I was thinking of replicating the similar logic in felix. Is that preferred? If we are ok to have this in libcalico-go, can I have the same FindNodeAddresses func in node.go ?


[BEAM-7021] Added ToString transform on Python SDK

Added ToString class in the combiners transformation on the Python SDK. Which includes three functions.

ToString.Kvs() : Converts KV Collection into string. Takes delimiter param as an optional field. (default delimiter is comma ",")
ToString.Elements() : Converts Element into string. Takes delimiter param as an optional field. (default delimiter is comma ",")
ToString.Iterables(): Converts Iterables objects into string. Takes delimiter param as an optional field. (default delimiter is comma ",")

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Run Python PostCommit

@mszb could you please check to see why tests might be failing?
R: @ibzib could you review this PR?

@aaltay previously build was failed due to linting issue which @ibzib pointed. Now :sdks:python:docs failed, which I am currently working on.

@ibzib  .. tests are passed... I've also fixed the linting and type issue you mentioned, please review the PR!

Thanks

Looks good. Please squash your commits together into a single commit to keep our commit history clean. After that it should be ready to merge

@aaltay . I have made changes you mentioned and squashed the commits suggested by @ibzib as well. Please review the PR.
Thank you.


skipEmptyDir doesn't work?

If i have a parentfolder of childfolders then it should create an index.ts file on that level?
If this isn't the intended purpose of skipEmptyDir can we add one to make it backwards compatible with create-ts-index.
It's a migration blocker

@Samuel-Morgan-Tyghe Hi,
Can you provide reproducable repo?

@imjuni https://codesandbox.io/p/devbox/j3mn67?migrateFrom=y9x7nm

In the sandbox i have added       "skipEmptyDir":false, which i assume makes an index.ts file for every directory including empty ones.
previous cti would create an index file in both /src/ and /src/components despite not exporting anything from these folders
usecase should be
i should be able to breakdown by folders IE
@Src/components = src/components/index.ts that imports/exports src/components/firstcomponent/index.ts +src/components/secondcomponent/index.ts


propose open app after installation

@Simon-Laux I saw you changed the code in the installation script, I don't understand everything that's happening anymore. is there now a callback if the installation was successful that I could then use in the main script?

is there now a callback if the installation was successful
not yet


Cannot connect to host api

Just in the last couple of days the BoM Radar Card on my Lovelace dash stopped showing any rain data.
Today I noticed in my logs "Error requesting bureau_of_meteorology data: Cannot connect to host api.weather.bom.gov.au:443 ssl:default [Try again]". The same thing has happened on my friends HA install and neither of us have changed anything in our setups.

BOM retired the api that was providing rain radar tiles. They have moved providers to Mapbox. I would say this is the issue.

This is not something this integration provides.  The BoM changed the radar data sources. You can use the rainviewer data source on the card though until a new version is written.  See this
https://github.com/Makin-Things/bom-radar-card/issues/32


maxLengthIndicator undefined

If textarea is focused before $('textarea#id').maxlength() is called, this produce the following  error: maxLengthIndicator undefined in manageRemainingVisibility()

This issue should be now fixed, can you please double check?

Double check done, it works.


Remove $ when writing job name

Description
Fixes #3437, a problem which was created by me in the first place.
Changed Behaviour
Does not remove the parsl. prefix from the hostfile written when using localprovider.
Fixes
Fixes #3437
Type of change

Bug fix

this is a problem with all the providers, right?

No, the other providers use the ${jobname} syntax correctly. They use it to describe a string Template, which means the $ is removed when substituting the variable name.
LocalProvider uses f-strings to replace jobname, which means the $ stays.


Semantic Linking definition

The first draft of the Semantic Linking structure.
This field is an array containing objects with three fields that let the user identify the local field, the remote field, and the output port to which the remote field belongs.

@SpyQuel I think it should be more "semantic" and rely less on ID

@SpyQuel we should merge this, I think is already used


feat: function to change the ion-back-button transition

Feature Request
Ionic version:
4.10.0
Describe the Feature Request
Allow the user to modify the transition of the ion-back-button.
Describe Preferred Solution
Allow the user to override the function called when clicked, or add a function to modify the transition in an onView... function.

Thanks for the feature request. Are you referring to the navigation animation when clicking the back button?

Thanks for the reply ! Yes, I'm talking about it

You can specify a custom navigation animation via the navAnimation config option: https://ionicframework.com/docs/react/config#config-options
Here is an example of the MD transition: https://github.com/ionic-team/ionic/blob/master/core/src/utils/transition/md.transition.ts
Does this fit your use case?

Oh, you're right, thank you! The Config class was not documented in the Ionic Angular docs, so I hadn't seen it, but that's what I was looking for. Thank you very much!

Oops sorry you're right. It was placed here: https://ionicframework.com/docs/utilities/config


Paper cut: It takes ~10 minutes to see if a pipeline works

Registering a pipeline that uses Tensorflow and running it for the first time takes about 10 minutes. 6 or 7 minutes to register the pipeline, then 2-3 minutes to execute it the first time. If you are troubleshooting a pipeline, this makes your iteration loop pretty slow.

Not sure if this comment exactly fits here or not, but one thing that sometimes helps band-aid over such paper cuts is having clear status displayed to the user, especially with timing hints. If they can see e.g., "container building" or "container spinning up" notifications with some approximate time it might give them a hint to go grab a snack instead of stewing in front of the computer waiting.

For spinning up the container we show a little spinner and say "Building container. This operation times out after 30 minutes." And then we print the current build status every 30 seconds.
We could probably improve most on pipeline invocation. Right now it just has a spinner and it tells you it's executing remotely. We should probably have some more status indication there, especially for when it's doing a cold start.

This could just be caching of docker layers on the container service node. The very first repo2docker run on a node takes a very long time. Thereafter its quite quick


Use dictionary for Rubicon resource tagging

Is your feature request related to a problem? Please describe
When managing large amounts of Rubicon resources, users need some amount of database-like querying using tags.
Querying resources would be easier if tagging used a key/value data structure.
Describe the solution you'd like
Implement tagging with a dictionary data structure for Rubicon resources (Experiments, Artifacts, etc).
Describe alternatives you've considered
Today, users need to write their own custom code to search through strings.
For example, an experiment is logged for each round of RFE using the pattern "RFE-iter-{iteration}".
If we want the second round of RFE, we have to use:
rfe_tag = [tag for tag in experiment.tags if tag.startswith("RFE-iter-")][0]
rfe_tag[9:]
With key/value tags, we could access the rfe iteration with something like:
experiment.tags["rfe_iteration"]
Additional context
Add any other context, code examples, or references to existing implementations about the feature request here.

hey @apeterson7! I've got a prototype for something that basically works like this:
>>> from rubicon_ml import Rubicon
>>>
>>> r = Rubicon(persistence="memory")
>>> p = r.create_project(name="name")
>>> e = p.log_experiment(tags=["refit", "best", "iter:0", "parent_id:1234"])
>>>
>>> e.tags
['refit', 'best', 'iter:0', 'parent_id:1234']
>>> e.tags[0]
'refit'
>>> e.tags[2]
'iter:0'
>>> e.tags["iter"]
'0'
>>> e.tags["parent_id"]
'1234'
>>> e.tags["error"]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/nvd215/github/capitalone/rubicon-ml/rubicon_ml/client/utils/tags.py", line 16, in __getitem__
    raise KeyError(index_or_key)
KeyError: 'error'
>>> e.tags[5]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/nvd215/github/capitalone/rubicon-ml/rubicon_ml/client/utils/tags.py", line 18, in __getitem__
    return super().__getitem__(index_or_key)
IndexError: list index out of range

would that achieve what you're looking for?


Ac buyer create brief

I haven't tested this yet but either way it would be nice to have those wip commits squashed.

Also, a bit of a description would be helpful.


add ability to clear store

this looks legit to me. @nastycoder mind rebasing this? apologies its taken so long to get to it

Hi, could you merge this pr please ? Thank you


Add lock around build logic building

Gradle has a lock around building buildSrc and putting the result in the JARs cache. So everything will be synchronized between builds and no bad things can end up in the JARs cache. The resulting JARs will end up on the classpath of the build this buildSrc belongs to.
For included builds, we don’t have such a lock. So when you run two builds concurrently, building and putting stuff from build-logic builds in the JARs cache will happen concurrently. That means it is quite probable that something bad ends up in the JARs cache.
One simple approach could be that Gradle adds a lock around building included builds necessary for build logic and putting the result in the JARs cache, similar to what we do for buildSrc.
This PR does currently something less: It adds a lock around building the included build logic build. That means bad things can still happen before something ends in the JARs cache.
Though it should avoid running concurrent builds on build logic, that may be causing build failures and wrong entries in the task history/build cache. The lock is currently around the requesting build. We could move it around the root build for more dead-lock avoidance.

Superseded by #26552 (wip)


Port to Empy-4.2

python3 -m em -p $ -D scaling='72' ./gtkrc.em >
../../gtk/theme/sugar-72.gtkrc
./gtkrc.em:693:31: error: ParseError: unknown markup sequence: $((; extension markup @((...)) invoked with no installed extension
:1:1: from this context
make[3]: *** [Makefile:465: sugar-72.gtkrc] Error 1
make[3]: Leaving directory '/home/ajay/sugar-artwork/gtk/theme'
make[2]: *** [Makefile:358: install-am] Error 2
make[2]: Leaving directory '/home/ajay/sugar-artwork/gtk/theme'
make[1]: *** [Makefile:370: install-recursive] Error 1
make[1]: Leaving directory '/home/ajay/sugar-artwork/gtk'
make: *** [Makefile:418: install-recursive] Error 1
Port successfully to empy 4.3 by fixing abive issues for ubuntu build
@chimosky please test it for fedora as i did change in 1 more file.

Manually rebased onto my branch.


Question about "eosio-cpp -o hello.wasm hello.cpp --abigen"

when I use "eosio-cpp hello.cpp -o hello.wasm --abigen", it won't run correctly，I must use “Ctrl+C” to stop it，it is so weird，and no “hello.abi” generated

here is the hello.cpp
#include <eosiolib/eosio.hpp>
#include <eosiolib/print.hpp>

using namespace eosio;

class hello : public contract {
  public:
      using contract::contract;

      [[eosio::action]]
      void hi( account_name user ) {
         print( "Hello, ", name{user} );
      }
};
EOSIO_ABI( hello, (hi))

here is the system info:

The next release (v1.3) should resolve these issues.

@larryk85
Any idea when the next release is, or a downgraded version we can use in the meantime?

@nsjames The new version（1.3.0） is available

Thanks @heyuanchao

@larryk85 v1.3.1 still have this problem

If you run eosio-cpp -version and eosio-abigen -version do these match and are they v1.3.1?

The reason is VirtualBox

@heyuanchao
i encountered the same error and i use :
Ubuntu 18.04.1 on VMware (Windows 10 64bit)
EOSIO v1.4.1
eosio.cdt-1.3.2
how do you solve the problem?
did you change some settings on VirtualBox? or just use Linux only computer?

@idnotbe i use Ubuntu 18.04.1 only computer at last

I have experienced the same problem: on Ubuntu 18.04 on VirtualBox the compilation process is stuck. I created .wasm and .abi files, but it looks corrupted: attempts to upload it into blockchain failed with error related to .wasm inconsistency.

Has this problem been resolved?
I use AWS's Ubuntu 18.04.1 LTS, the same problem is occurring.

i solved this problem.
just do not use a virtual machine.
i completely formatted my computer and installed Ubuntu os.

just do not use a virtual machine.

This simply isn't an option. We need VM support for a lot of users.
Personally I can't just dual-boot ubuntu and work with eosio as it limits the programs I can run ( a lot of which do not run on Unix )

i solved this problem.
just do not use a virtual machine.
i completely formatted my computer and installed Ubuntu os.

I do not use a virtual machine.
I use AWS EC2 Ubuntu 18.04.1 LTS
but the same problem occurs

i solved this problem.
just do not use a virtual machine.
i completely formatted my computer and installed Ubuntu os.

I do not use a virtual machine.
I use AWS EC2 Ubuntu 18.04.1 LTS
but the same problem occurs

That's going to be virtualized on AWS's end of things so it means it's likely that there is some issue with the CDT and virtualization.

just do not use a virtual machine.

This simply isn't an option. We need VM support for a lot of users ( or at the very least windows support ).
Personally I can't just dual-boot ubuntu and work with eosio as it limits the programs I can run ( a lot of which do not run on Unix )

I agree 100%. Requiring a native installation of the CDT on OS-X or Linux is really not a viable strategy. It also means that a lot of continuous integration and testing platforms won't be feasible to use which is a big barrier to good development down the line.

It also failed in a Digital Ocean server, I guess it's also a VM. But it worked installing Ubuntu in a local machine.

Same problem. I run it in docker and eosio-cpp (version 1.3.2) hangs forever. Even if using cmake, it still hangs forever. Have anyone solved this?

Is anyone solved this ?

I have tried AWS, docker, virtualbox, parallels and windows subsystem for linux and I can't replicate this at all.  If anyone who is having this same problem could post VM settings (ram, cpu cores, etc.) that would help me figure out what is going wrong for you.

I have the issue running VMWare Workstation 14 with a clean install of Ubuntu 18.04 LTS. This issue appears both using the .deb and when building from source.  My VM is provisioned with 16GB of RAM (host has 32) and 2 cores (host has 16-ish depending on how you count). Let me know if there's any more info that might help - happy to try and get this debugged!

VirtualBox Win10 host, 16gb allocated, 60gb vdi, ubuntu 16.04.

Processor -- Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz, 3696 Mhz, 6 Core(s), 12 Logical Processor(s)

I upgrade virtual machine from Ubuntu 16.04. LTS to Ubuntu 18.04 ,this issue appears.  but the say settings in my partner's computer ,it doesn't appear.

i solved this problem.
just do not use a virtual machine.
i completely formatted my computer and installed Ubuntu os.

Why the compiler need the real machine ? why it doesn't work inside VM ?
I really doubt whether this the root cause for this issue.

I don't think this issue is really resolved.
Have you tried the 1.3.1 or 1.4 ?  @larryk85

I have tried every version from 1.2.x to 1.4.x and we now have CI being added to the pipeline which also doesn't replicate this issue.  @vingo555 what are your specs for your vm? What virtualization software are you using?

@larryk85 I cannot compile contract with eosio-cpp as well, it hangs forever ,never return back.  you can replicate the issue as following:

pull official eos image:

 docker pull eosio/eos:v1.4.3

start this image and get into the container, then  install official cdt 1.4.1 deb package:

$ wget https://github.com/eosio/eosio.cdt/releases/download/v1.4.1/eosio.cdt-fedora-1.4.1.x86_64-0.x86_64.rpm
$ sudo yum install ./eosio.cdt-fedora-1.4.1.x86_64-0.x86_64.rpm

copy hello sample into container and run eosio-cpp

$ eosio-cpp -o hello.wasm -abigen -v hello.cpp

now you replicate the issue : it will freeze here forever.
After some quick research, I found out the problem was related with eosio-ld ， if you exclude
the link phase, above command can return with an incomplete wasm(un-linked yet):
$ eosio-cpp -o hello.wasm -abigen -v -c hello.cpp

hope this information could help.
BTW: cdt document is really,really bad.

i solved this problem.
just do not use a virtual machine.
i completely formatted my computer and installed Ubuntu os.

I do not use a virtual machine.
I use AWS EC2 Ubuntu 18.04.1 LTS
but the same problem occurs

Same here

UPDATE ：
@larryk85 after some more research， I found out the issue is related with cpu core numbers: if the machine/vm has more than one cpu core, eosio-cpp works like a charm, but if only one cpu core exists, it will hang forever.
hope this information helps.

如果虚拟机的core=1，就会hang forever，@heyuanchao  将虚拟机设为多核即可避免此问题。
估计这年头还用单核的机子已经很少了，或者我们构建的虚拟机默认也不会是单核cpu，所以k85一直说无法重现bug，哈哈

Yeah I was also facing the same issue to compile one of dummy contract I was trying to create it took  a lot of time today to figure me out about the same issue the compiler always hanged.
But in my virtual machine I followed following steps and it could resolve the issue now it is able to compile and produce desired result.
Settings I tried :+1:
Power off the virtual machine.
Right-click on the virtual machine and click Edit Settings.
Click Systems and select CPUs make it more than 1
Choose the number of virtual processors
may be during cdt install we can have some way to notify about this to end user it would help for a vm user.
Cheers!

UPDATE ：
@larryk85 after some more research， I found out the issue is related with cpu core numbers: if the machine/vm has more than one cpu core, eosio-cpp works like a charm, but if only one cpu core exists, it will hang forever.
hope this information helps.
@larryk85 I cannot compile contract with eosio-cpp as well, it hangs forever ,never return back. you can replicate the issue as following:

pull official eos image:

 docker pull eosio/eos:v1.4.3

start this image and get into the container, then  install official cdt 1.4.1 deb package:

$ wget https://github.com/eosio/eosio.cdt/releases/download/v1.4.1/eosio.cdt-1.4.1.x86_64.deb
$ sudo apt install ./eosio.cdt-1.4.1.x86_64.deb

copy hello sample into container and run eosio-cpp

$ eosio-cpp -o hello.wasm -abigen -v hello.cpp

now you replicate the issue : it will freeze here forever.
After some quick research, I found out the problem was related with eosio-ld ， if you exclude
the link phase, above command can return with an incomplete wasm(un-linked yet):
$ eosio-cpp -o hello.wasm -abigen -v -c hello.cpp

hope this information could help.
BTW: cdt document is really,really bad.

Same here, using AWS ubuntu 18. the eosio-cpp never return, wasm and abi files somehow generated, but cannot be deployed to chain.

I have replicated the issue, but I don't have a fix available for this.  You need at least 2 cores or else the linker will hang indefinitely.  Will keep everyone posted if a fix is made available.

@cddjr 答案是對的
VMware workstation 15 run Ubuntu-16.04 with 2 core CPU
This solution is work!

I use the cheapest VPS which have only one core...
So is here any way to fix this problem, something like modify system parameters?
这不是坑爹了吗，双核的好贵。。

I use the cheapest VPS which have only one core...
So is here any way to fix this problem, something like modify system parameters?
这不是坑爹了吗，双核的好贵。。

那你只能在本地编译了

I hvae exactly the same problem while my VM has 4 CPU cores
Here's what I encountered

And the following is my version info
lx@ubuntu:~/contracts/hello$ uname -a
Linux ubuntu 4.18.0-15-generic #16~18.04.1-Ubuntu SMP Thu Feb 7 14:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
lx@ubuntu:~/contracts/hello$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.2 LTS
Release:	18.04
Codename:	bionic
lx@ubuntu:~/contracts/hello$ eosio-cpp --version
eosio-cpp version 1.6.0
lx@ubuntu:~/contracts/hello$ eosio-abigen --version
eosio-abigen version 1.6.0
lx@ubuntu:~/contracts/hello$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.3.0-27ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04)
lx@ubuntu:~/contracts/hello$ clang++ -v
clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.3.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0
Candidate multilib: .;@m64
Selected multilib: .;@m64

VM config as well (on VMware® Workstation 15 Pro)

I hvae exactly the same problem while my VM has 4 CPU cores
Here's what I encountered

And the following is my version info
lx@ubuntu:~/contracts/hello$ uname -a
Linux ubuntu 4.18.0-15-generic #16~18.04.1-Ubuntu SMP Thu Feb 7 14:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
lx@ubuntu:~/contracts/hello$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.2 LTS
Release:	18.04
Codename:	bionic
lx@ubuntu:~/contracts/hello$ eosio-cpp --version
eosio-cpp version 1.6.0
lx@ubuntu:~/contracts/hello$ eosio-abigen --version
eosio-abigen version 1.6.0
lx@ubuntu:~/contracts/hello$ g++ -v
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 7.3.0-27ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 7.3.0 (Ubuntu 7.3.0-27ubuntu1~18.04)
lx@ubuntu:~/contracts/hello$ clang++ -v
clang version 6.0.0-1ubuntu2 (tags/RELEASE_600/final)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/8
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.3.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0
Candidate multilib: .;@m64
Selected multilib: .;@m64

VM config as well (on VMware® Workstation 15 Pro)

I downgrade my cdt to v1.5.0, and everything is ok

I downgrade my cdt to v1.5.0, and everything is ok

Downgrading the cdt to v1.5.0 does not solve the problem for me. Instead of freezing during eosio-cpp -abigen -o hello.wasm hello.cpp, I now get this error:
hello.cpp:1:10: fatal error: 'eosio/eosio.hpp' file not found
#include <eosio/eosio.hpp>
         ^~~~~~~~~~~~~~~~~
1 error generated.

I downgrade my cdt to v1.5.0, and everything is ok

Downgrading the cdt to v1.5.0 does not solve the problem for me. Instead of freezing during eosio-cpp -abigen -o hello.wasm hello.cpp, I now get this error:
hello.cpp:1:10: fatal error: 'eosio/eosio.hpp' file not found
#include <eosio/eosio.hpp>
         ^~~~~~~~~~~~~~~~~
1 error generated.

I'm terribly sorry, but I used the sample contract from https://github.com/EOSIO/eosio.cdt/tree/v1.5.0/examples/hello
For your case, I recommend you upgrade your cdt to v1.6.1. I tried it and it works.

For your case, I recommend you upgrade your cdt to v1.6.1. I tried it and it works.

Indeed. I confirm

I'm closing this issue as the root cause of requiring at least 2 cores has been discovered and documented,

FWIW, this still happens with eosio-1.6.1.  It's reproducible on a single-core machine, but I just had it happen on a dual-core machine (more specifically, a 2 vCPU AWS t2.medium instance).
Here's my process tree:
27808 ?        Ss     0:00  \_ sshd: ubuntu [priv]
27912 ?        S      0:00  |   \_ sshd: ubuntu@pts/1
27913 pts/1    Ss     0:00  |       \_ -bash
28235 pts/1    S+     0:02  |           \_ eosio-cpp --abigen addressbook_with_age_and_notify.cpp -o addressbook.wasm
28239 pts/1    S+     0:00  |               \_ sh -c /usr/opt/eosio.cdt/1.6.1/bin/eosio-ld  /tmp/addressbook_with_age_and_notify
28240 pts/1    S+     0:00  |                   \_ /usr/opt/eosio.cdt/1.6.1/bin/eosio-ld /tmp/addressbook_with_age_and_notify.cp
28241 pts/1    S+     0:00  |                       \_ sh -c /usr/opt/eosio.cdt/1.6.1/bin/wasm-ld --gc-sections --strip-all -zst
28242 pts/1    Sl+    0:00  |                           \_ /usr/opt/eosio.cdt/1.6.1/bin/wasm-ld --gc-sections --strip-all -zstac

strace -p 28242 shows wasm-ld stuck in futex wait call (which could by any of pthread_cond_wait or sem_wait or similar).
futex(0x7ffdce2358c8, FUTEX_WAIT_PRIVATE, 0, NULL

It makes sense that whatever triggers this is just less likely to happen on a 2 core machine, yet still possible.
I googled and found one known bug in LLVM's multi-threaded linker, e.g. here, but I do not know which version eosio.cdt is at.

Thanks to @ciga2011
It has solved by running cleos-cpp on an environment more than one core processor attached.


Plugins have no types

Something goes wrong with Rollup when building as the plugins lose their typing (and recognition as importable modules) causing them to need manual declaration like so
declare module 'cal-heatmap/plugins/CalendarLabel'
declare module 'cal-heatmap/plugins/Tooltip'
declare module 'cal-heatmap/plugins/LegendLite'

However, this, of course, does not come with the typings the plugins should have

Yeah, to remedy this, I forked the branch and wrote a custom build script without Rollup and have just been using that in my project directly.

Hi @exoRift it seems your fork isn't public, would you mind sending a pull request or sharing the repo?

@htrex It's under my organization.
https://github.com/guidance-analytics/cal-heatmap
It can be installed with npm i "github:guidance-analytics/cal-heatmap#ga-override-v2"
(#ga-override-v2 specified the tag to make sure it doesn't change, or you can fork it yourself. Whichever you decide)

thanks @exoRift It works as a temporary solution, even if it gives Uncaught SyntaxError: Cannot use import statement outside a module

Yeah, I'm emitting ES code. You can either fork and change the emit, or use type: module in your package json since you're using TS anyway

after some more experiments with cal-heatmap in an angular 16 app it seems that @exoRift first comment is the way to go, I was missing that the declare module statements must be in src/index.d.ts

I'm trying to use the the lib and it's plugins in an Angular 16 App, so far I had success with the main lib but can't import the plugins.
import LegendLite from 'cal-heatmap/plugins/LegendLite';
gives error TS2307: Cannot find module 'cal-heatmap/plugins/LegendLite' or its corresponding type declarations.

I encountered the same issue while using React 17 + NextJS 12. I tried adding the following declarations in src/index.d.ts:
declare module 'cal-heatmap/plugins/CalendarLabel';
declare module 'cal-heatmap/plugins/Tooltip';
declare module 'cal-heatmap/plugins/LegendLite';

However, the error persists 😥. Did I miss anything?"

Same with angular 17

Should be fixed in master, will do some more test before releasing


feature: re-do blog post use async utilities for state updates

What kind of changes does this PR include?

Minor fixes (broken links, typos, css, etc.)
Changes with larger consequences (logic, library updates, etc.)
Something else!

Description

Closes #
What does this PR change? A brief description would be great.
Did you change something visual? A before/after screenshot can be helpful.

#110  👈
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @slackermorris and the rest of your teammates on  Graphite

Merge activity

Oct 27, 10:13 PM EDT: A user started a stack merge that includes this pull request via Graphite.


DataMapper adds DEFAULT NULL to a required field if no other default is specified

I'm getting an error when I use DataMapper's auto_upgrade! method to add fields in an SQLite3 db based on the properties defined in my code:

DataObjects::SyntaxError at /history
Cannot add a NOT NULL column with default value NULL

An example of an offending line would be:
property :fieldname, Text,  required: true

The error goes away if I (a) remove the line, (b) remove required: true, (c) change true to false, or (d) add a default value.
SQLite does not require a default value to be specified for every field, so this problem is definitely with DataMapper, not SQLite.
I'd like the required field to be enforced at the database level,  but DataMapper is preventing that by adding a NULL default when I don't specify any other default.  (Having any default is just as bad as having a NULL value.  I need to have real data entered into this field.)
Slightly more info at:  http://stackoverflow.com/q/26832257/241142

This is likely something for dm-migrations project. I'll move it there.


[TODO] Add pages and components to App.js

The components do not currently render, although they have routes and I got started on all but NotFound.js
Add them to App.js so thst they remder.
Also fix the routes with react router dom.  Switch didnt work.

Hey could you please assign me this task, I would love to contribute and please describe the issue in detail


Added link to Contentful Migration Action

@Shy your changes have been merged, thanks for your contribution 👍

Thanks for the fast merge!

@Shy you are very welcome!


Tracking Issue: Combinatorial Game Theory

This keeps track of some missing concepts in combinatorial game theory, including mentions in PGame's future work section

[ ] The theory of dominated, reversible positions, and unique normal form for short games.
[ ] Analysis of basic domineering positions
[ ] Board-splitting utilities (for Chomp, Domineering, Nim, Sprouts)
[ ] Temperature
[ ] Loopy games

[ ] Stopper games

[ ] Impartialness via the equivalence of L/R moves
[ ] Strategy Stealing Argument (Chomp/Hex as examples)
[ ] Pairing Strategy for State games (unsure what the typical example is here for normal-play games, but perhaps Tic-Tac-Toe for a positional game?)
[ ] Non-normal-play short games
[ ] Game Stops
[ ] Tiny & Miny games
[ ] Lawnmower theorem

Game archive:

[ ] (discuss) Move domineering to the Archive?
[ ] Proof of Sim's inability to tie via Ramsey Theory

[ ] Proof of Sim winning by the 2nd player? (This seems to be done by computer search only)

[ ] Sprouts

[ ] Proof of winning state for Brussel Sprouts despite suboptimal play

Just seeing this now!
Combinatorial game theory is full of a lot of quirky games, but I think most of these aren't really useful for anything else. Perhaps we can create a game folder in the archive to house these sorts of results?
Chomp (or really, its generalization of the poset game) seems by far like the easiest one to formalize. By doing this, we even get all-green Hackenbush for free. The only thing I'm unsure of is: what are the conditions required for the game to terminate? A finite poset is sufficient but not necessary, as e.g. you can play Chomp on any n-dimensional "cuboid" with ordinal dimensions. Is the required condition that the poset be well-founded?
We already have Nim and Domineering in Mathlib. What sort of "board-splitting" utilities do you want on them? Do you just want some sort of result that expresses a position as the sum of other positions?
I'm not very familiar with all of the other described concepts. Feel free to discuss on Zulip if you have any plans for them!

Sure! I'll open a zulip thread sometime soon for this discussion, but for the other questions you just asked:

Combinatorial game theory is full of a lot of quirky games, but I think most of these aren't really useful for anything else. Perhaps we can create a game folder in the archive to house these sorts of results?

Absolutely!

Chomp (or really, its generalization of the poset game) seems by far like the easiest one to formalize. By doing this, we even get all-green Hackenbush for free. The only thing I'm unsure of is: what are the conditions required for the game to terminate? A finite poset is sufficient but not necessary, as e.g. you can play Chomp on any n-dimensional "cuboid" with ordinal dimensions. Is the required condition that the poset be well-founded?

The poset games (Chomp) was the first game I wanted to formalize!

We already have Nim and Domineering in Mathlib. What sort of "board-splitting" utilities do you want on them? Do you just want some sort of result that expresses a position as the sum of other positions?

I believe I said that bulleted point wrong; I'll remove it, but I meant it as certain games (i.e. Nim, Domineering, Cram, Sprouts) to have theorems that show that some games are equal to sums of its own instance.

I'm not very familiar with all of the other described concepts. Feel free to discuss on Zulip if you have any plans for them!

Sure! One of the other parts I was interested in formalizing was the loopy games, though that requires a multigraph with labelled edges which I'm unsure if lean4 has.


feat(web-react): creates page to manage homepage posts

Context
Not long ago, the ads feature on the home page was added. It is an amazing feature to bring news to users. However, I believe that it has been very little explored due to the difficulties of managing the posts. The purpose of this PR is to aggregate everything already available in GraphQL in a page where users can more easily manage their posts on the home page.
Prints of the new page
New button (called "News") on homepage header to enter the Manage Posts page

Use the env variable "MANAGE_POSTS_ENABLED" in the .env file to enable/disable this page

Create new posts

The switch button controls which type of homepage post will be created (Link or Text). Users without permission to create posts can access the post creation modal, but an error will raise when click on create button.

Se your Posts

There is only option to delete your posts (yet..)

Confirming that the posts were created kkk

Caveats:

The option of appearing or not the button should be through platform privileges, but there is not yet a "Manage Homepage Posts" privilege.

Checklist

[x] The PR conforms to DataHub's Contributing Guideline (particularly Commit Message Format)
[ ] Links to related issues (if applicable)
[ ] Tests for the changes have been added/updated (if applicable)
[ ] Docs related to the changes have been added/updated (if applicable). If a new feature has been added a Usage Guide has been added for the same.
[ ] For any breaking change/potential downtime/deprecation/big changes an entry has been made in Updating DataHub

hey @PatrickfBraz thanks again for this! let me know if you want any assistance pushing this thing forward :)

So we actually had a need to get this feature in sooner than expected so I ended up taking your work here and building off of it/finished things up in my PR here: https://github.com/datahub-project/datahub/pull/8707
Thank you so much for your hard work on this! it's going to be such a nice feature that people will love.

Closing this PR as the work was done in another PR. Thanks for raising this.


Helios 2.0 Design Concerns and Top-level Spec

This is the discussion area for all of the high-level stuff on http://helios-io.github.io/specs/.
Helios' design concerns reflect the following:

Read http://helios-io.github.io/specs/ for more details, but discuss them here.

Updated as of yesterday with actual API specifications http://helios-io.github.io/specs/api.html


Questions on stream id exhaustion and handling the error NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE

Title: Questions on stream id exhaustion in long-lived HTTP2 connections and handling the error NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE
Description:
In one of our tests where an HTTP2 server based on nghttp2 was used, it was observed that an error NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE=-509 was thrown once the stream id's were exhausted. After this, the connection remained open without any valid stream id and therefore it failed to handle new requests. A new connection was not opened as well. Since HTTP2 codec in Envoy is based on nghttp2, how would Envoy handle this NGHTTP2_ERR_STREAM_ID_NOT_AVAILABLE error? I could not see this particular error being handled in the envoyproxy code.
The standard here https://httpwg.org/specs/rfc7540.html#StreamIdentifiers states the following:
"Stream identifiers cannot be reused. Long-lived connections can result in an endpoint exhausting the available range of stream identifiers. A client that is unable to establish a new stream identifier can establish a new connection for new streams. A server that is unable to establish a new stream identifier can send a GOAWAY frame so that the client is forced to open a new connection for new streams"
The max_requests_per_connection is supposed to be set to 2^29 when Envoy is acting as a client and therefore expected to drain the connection once this limit is reached. When Envoy is used as a server, does it send a GOAWAY frame so that the client is forced to open a new connection as described in the standard above? Also, is there any limit set on max_requests_per_connection?
[optional Relevant Links:]

Any extra documentation required to understand the issue.
Related - https://github.com/envoyproxy/envoy/issues/19219

cc @YaoZengzeng could you please look into this as well please?

@sha-rath I will:)

Thank you!

If this has been observed for other nghttp2 servers I think filing an issue with nghttp2 might make sense?
cc @birenroy to make sure oghttp2 handles this gracefully.

Is this a duplicate of https://github.com/envoyproxy/envoy/issues/19257 ?

@alyssawilk sorry my question was wrongly framed. I have updated my question now. I'm not sure if there is an issue with nghttp2 as such, would like to hear it from @birenroy as well. I think you meant #19219. If so, yes, it is mostly similar except for the error handling part.

I don't have much detailed knowledge of nghttp2 or its internals. I would expect it to send a GOAWAY as indicated in the spec, but I haven't investigated the source code.
I'll make a note to ensure our replacement library does the right thing.


build: update to rules_nodejs 2.3.2

Updates rules_nodejs and related dependencies to 2.3.2 as a precursor to updating to 3.0. Relates to https://github.com/angular/angular/pull/40367.

Caretaker Note: While this has been tested locally against windows, there have been issues with landing this rules_nodejs update in framework related to windows linker.

Caretaker Note: While this has been tested locally against windows, there have been issues with landing this rules_nodejs update in framework related to windows linker.


Pilot Model Import Documentation

Should close Issue #92 when finished and merged.
Currently missing:

Credits to Harb.
Images
Rikas suggestions in #92
general readability

Open for anyone who knows about model importing and wants to help.

i'd suggest not making the POV model "optional" as frankly it's not that much more effort, and you see the pov model 90% of the time

I agree.

@emma-miler merge. review. or whatever the next part of process is. Thank you.

I can't seem to remove the "changes request" check but I've made the requested changes
I believe the guide is successfully and completely translated for ModdingDocs.
Ready to ship.

Oops


API Returns 200 OK Status for Non-Existent Task Instead of 404 Not Found

Issue Description

The backend API https://api.realdevsquad.com/taskRequests/:id returning a 200 OK status code along with the message "Task request returned successfully" even when the requested task ID does not exist. This is misleading because it suggests the request was successful, while the task is not actually found.
Expected Behavior

The API should return a 404 Not Found status code.
The response body should provide a clear error message, such as:

{
    "error": "Task not found"
}

The message "Task request returned successfully" should only be returned when a valid task is found.
Current Behavior

The API returns a 200 OK status code, regardless of whether the task ID exists or not.
The response body always includes:

{
    "message": "Task request returned successfully"
}

Screenshots

Reproducibility

[x] This issue is reproducible
[ ] This issue is not reproducible

Steps to Reproduce

Try sending a get request to this endpoint https://api.realdevsquad.com/taskRequests/:id with a task ID that does not exist
Observe that the response returns a 200 OK status code with the message "Task request returned successfully".

Severity/Priority

[ ] Critical
[ ] High
[x] Medium
[ ] Low

Additional Information

Checklist

[x] I have read and followed the project's code of conduct.
[x] I have searched for similar issues before creating this one.
[x] I have provided all the necessary information to understand and reproduce the issue.
[x] I am willing to contribute to the resolution of this issue.

I would like to work on this

https://github.com/user-attachments/assets/cf55aeee-6909-4612-9473-f5204c844454

@Akshat187 Any updates?

I'm working on this already  @Xundan91


Some small updates to CSV download

Separating comments and subcase

Current coverage is 91.67%

Merging #319 into master will decrease coverage by -0.09% as of 6351215

@@            master    #319   diff @@
======================================
  Files           41      41
  Stmts         2064    2066     +2
  Branches         0       0
  Methods          0       0
======================================
  Hit           1894    1894
  Partial          0       0
- Missed         170     172     +2

Review entire Coverage Diff as of 6351215

Powered by Codecov. Updated on successful CI builds.


login page design

design a responsive login page using html,css and javascript

hello i can help in this can you asign this issues to me

yes @NarpatAanjana you can Work on this issues will appreciate your collaboration. Just make a responsive login page do use any language you want.


Some small refactoring

Just a small PR trying to split the work in the enormous index.vue file.

Hey @AndrewBastin,
Your changes look good to me!
View build log
TravisBuddy Request Identifier: 509928a0-9bfc-11ea-9438-0b74518d636c


Prefetch pnc

@kosciCZ Could you please review the PR?

Also, please also follow step 6 here to enable dev package managers (generic package fetcher still has just experimental support)

task prefetch-dependencies has the status "Failed":
Error: InvalidInput: 1 validation error for user input
packages -> 0
  Input tag 'generic' found using 'type' does not match any of the expected tags: 'bundler', 'gomod', 'npm', 'pip', 'rpm', 'yarn'

@kosciCZ I see this error during the pipeline run, any idea what could be added for generic fetcher to prefetch type

@MohammadiIram that's gonna be the developer flag, see my [other comment](https://github.com/red-hat-data-services/trustyai-explainability/pull/44#issuecomment-2446349320l

Also, please also follow step 6 here to enable dev package managers (generic package fetcher still has just experimental support)

yeah, i will add the rpms.in.yaml, but for generic fetcher what can we add the type?

@kosciCZ Ay idea why do we need ["./fedora.repo"] we would want upi.repo
Something like this will be the rpms.in.yaml
contentOrigin:
  repofiles:
    - ubi.repo
packages:
  - unzip
  - jq
  - wget

@kosciCZ Could we merge this PR and look what we find in the pipeline run?

Also, please also follow step 6 here to enable dev package managers (generic package fetcher still has just experimental support)

yeah, i will add the rpms.in.yaml, but for generic fetcher what can we add the type?

You can specify a json array like this: [{"path": ".", "type": "rpm"}, {"path": ".", "type": "generic"}]

It should be supported now that you added the "dev-package-managers" flag

It should be supported now that you added the "dev-package-managers" flag

DOne

It is possible that the prefetch task is fixed to the previous version of cachi2. Could you please try updating the reference from
quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.1@sha256:fe7234e3824d1e65d6a7aac352e7a6bbce623d90d8d7da9aceeee108ad2c61be

to
quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.1@sha256:17b60ada3c2adb88fc2af6964cc73d386b41c235424c815f8e21f9b01a34a4f5

Also, you should update the Dockerfile to remove the ARG PNC_FILES_JSON and you don't need the jq and wget deps (can be removed from Dockerfile and the rpms.in.yaml/rpms.lock.yaml)

It is possible that the prefetch task is fixed to the previous version of cachi2. Could you please try updating the reference from
quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.1@sha256:fe7234e3824d1e65d6a7aac352e7a6bbce623d90d8d7da9aceeee108ad2c61be

to
quay.io/konflux-ci/tekton-catalog/task-prefetch-dependencies:0.1@sha256:17b60ada3c2adb88fc2af6964cc73d386b41c235424c815f8e21f9b01a34a4f5

After updating i see this
Task Statuses:
Pipeline rhoai-tenant/odh-trustyai-service-v2-16-on-pull-request-b88gg can't be Run; it contains Tasks that don't exist: Couldn't retrieve Task "resolver type bundles\nname = prefetch-dependencies\n": error requesting remote resource: error getting "bundleresolver" "rhoai-tenant/bundles-1c2b8a693f3a93dfd98b741fedd6b54a": cannot retrieve the oci image: GET https://quay.io/v2/konflux-ci/tekton-catalog/task-prefetch-dependencies/manifests/sha256:17b60ada3c2adb88fc2af6964cc73d386b41c235424c815f8e21f9b01a34a4f5: MANIFEST_UNKNOWN: manifest unknown; map[]

@kosciCZ I also tried to update it with the latest digest which is sha256:3be04adda63fc843db5eea837cabe33317a6d4f378c559de0c7ef888103e7fd4
the latest run still says https://github.com/red-hat-data-services/trustyai-explainability/pull/44/checks?check_run_id=32332061259
Error: InvalidInput: 1 validation error for user input
packages -> 1
Input tag 'generic' found using 'type' does not match any of the expected tags: 'bundler', 'gomod', 'npm', 'pip', 'rpm', 'yarn'

@kosciCZ I still see same error with prefetch-task
https://konflux.apps.stone-prod-p02.hjvn.p1.openshiftapps.com/application-pipeline/workspaces/rhoai/applications/rhoai-v2-16/pipelineruns/odh-trustyai-service-v2-16-on-pull-request-ctdhd/logs?task=pnc-cli-build

@kosciCZ I have updated the tekton pipeline and dockerfile. We have a green build. Please feel free to review the PR. I will merge this PR and verify with push pipeline

:tada: nice, glad you have been able to figure it out! I left two comments, mostly about cleanup, but nothing blocking.


Fix build for armv7, GNU as uses @ for single-line comments on ARM

Build originally failed with:
[..]
unpack_armv7.s: Assembler messages:
unpack_armv7.s:1: Error: junk at end of line, first unrecognized
character is /' unpack_armv7.s:2: Error: junk at end of line, first unrecognized character is /'
unpack_armv7.s:3: Error: junk at end of line, first unrecognized
character is /' unpack_armv7.s:4: Error: junk at end of line, first unrecognized character is /'
unpack_armv7.s:5: Error: junk at end of line, first unrecognized
character is /' unpack_armv7.s:6: Error: junk at end of line, first unrecognized character is /'
unpack_armv7.s:7: Error: junk at end of line, first unrecognized
character is `/'
Makefile:661: recipe for target 'unpack_armv7.lo' failed
[..]

Sorry about this...I should have sent you an e-mail before. I have been working temporarily in the "unicode" branch and I put your change in there a month ago thinking I was going to merge back to Master soon. I still think I'm going to merge back soon, but if I don't I'll just pull this. Thanks again!

Merged. Thanks for the patch!


example_status_persister can't find status_id

Every so often when we run our test suite, we get undefined method 'split' for nil:NilClass (NoMethodError) here: https://github.com/rspec/rspec-core/blob/master/lib/rspec/core/example_status_persister.rb#L134
Looks like for some reason it's not finding the scoped_id.
Here's an example stack trace:
/var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:134:in `sort_value_from': undefined method `split' for nil:NilClass (NoMethodError)
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:90:in `each'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:90:in `sort_by'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:90:in `merge'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:76:in `merge'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:39:in `merged_statuses'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:35:in `dumped_statuses'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:24:in `persist'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/example_status_persister.rb:15:in `persist'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:125:in `persist_example_statuses'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:90:in `block in run'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:89:in `tap'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:89:in `run'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:73:in `run'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:41:in `invoke'
	from /var/lib/buildkite-agent/builds/market-ip-10-0-0-8.ec2.internal/envato-marketplaces/marketplace/vendor/bundle/ruby/2.2.0/gems/rspec-core-3.3.2/exe/rspec:4:in `<top (required)>'
	from bin/rspec:16:in `load'
	from bin/rspec:16:in `<main>'

Thanks for reporting this!  It's not clear to me what the source of this bug is.  Looking at the line you referenced, the error could only happen if scoped_id is nil, and that could only happen if the split on the prior line did not return 2 parts.  The split pattern is designed to split the file name and scoped_id parts and should always work as long as id is in the form of <file_name>[<scope_id>].  So the error you got suggests that somehow the id was not in that form.  However, that's the way we format example ids so I'm puzzled how it got in this state.
There are a few ideas I can think of:

Maybe something (or someone) is editing the example persistence file, adding mangled ids to the mix.
Maybe something is mutating the example ids on the RSpec examples somehow (e.g. a poorly behaved extension gem).

Regardless, I'm not able to address this bug without more info.  Any chance you can put together a reproducible example?  If not, try this patch in your project:
module PrintProblematicIDs
  def sort_value_from(example)
    super
  rescue
    puts "Example id #{example.fetch(:example_id).inspect} could not be parsed"
    raise
  end
end

RSpec::Core::ExampleStatusMerger.prepend PrintProblematicIDs

This won't solve your problem but should print out the ID that's causing the problem so we can see what it looks like.  From there hopefully we can diagnose further and fix the problem.

@macosgrove would you mind putting the patch myron posted in your spec_helper and rerunning your test suite until it gives some output? We'd love to have a repro case for this.

Closing due to lack of response.  If someone is able to provide the requested output we can reopen.

I had a similar issue in a different line... it turned out that another of my libraries (intended to modify the String class) was interfering somehow. When I took that out, it worked again.


cli: Integrate columns package on signal and exec trace gadgets

Integrate columns package on signal and exec trace gadgets
This PR aims to start the discussion about integrating the tableformatter (https://github.com/kinvolk/inspektor-gadget/pull/877) in the CLI. I transformed two gadget to start testing the integration.
Implementation details
Given that the tableformatter only manages the case where the gadget output needs to be printed in columns, the final implementation cannot use it directly as an implementation of TraceParser (as we did during experiments: 1 and 2) because TraceParser.TransformEvent is expected to manage both cases JSON and columns.
Therefore, in the first commit, I started by modifying the TraceParser.TransformEvent to TraceParser.TransformToColumns and moved the management of JSON to its caller (TraceGadget). As described in the commit message, it is an intermediate step needed to introduce the usage of the columns library progressively. Otherwise, we would need to update all
the trace gadgets at once, and it's what we are trying to avoid. Once all the trace gadgets use the columns library, we will move the logic to print JSON or columns to a common place (parser-tableformatter.go that will become parser.go).
After this change, I modified the signal trace gadget to use the columns library, which was pretty simple. But then, I did the same for the exec trace gadget that is used by kubectl-gadget, local-gadget and in a standalone example. Therefore, we have all use case to test the new parser.
How to use
Test:

bind, exec, signal and tcp trace gadgets with kubectl-gadget.
bind, exec and tcp trace gadgets with kubectl-gadget (signal is not yet supported).
Run examples/gadgets/parser/trace/exec/exec.go

To be defined

[x] Q: How should we retrieve the gadget-specific columns? I am proposing WithNoTags.

A: Yes, going for WithNoTags. It was already included in #877.

[x] Q: How to ensure that the Kubernetes and ContainerRuntime columns are always shown before the gadget-specifics? We are now relying on the fact that the Kubernetes and ContainerRuntime columns will always be defined first in the event struct.

A: For now, we will rely on the order they are defined.

[x] Q: What to do when custom-columns include invalid columns name? I propose to print a warning message and ignore them.

A: We agreed to return an error.

[x] Define width and ellipsis for Kubernetes metadata.

Width: We agreed to use the same for all of them: 30. And enable autoscale so that it also works well on small screens.
Ellipsis:

Node and Pod: middle.
Namespace and Container: end (Default).

[x] We need to start using JSON format on integration-tests to avoid failing because some columns use the ellipsis (#719).

Resolved by https://github.com/kinvolk/inspektor-gadget/pull/945.

NODE             NAMESPACE        POD                            CONTAINER                 PID     TPID    SIGNAL           RET    COMM
fv-az28-19       test-sigsnoop-9… test-pod                       test-pod                  15269   15269   SIGURG           0      runc:[2:INIT]
fv-az28-19       test-sigsnoop-9… test-pod                       test-pod                  15269   1       SIGURG           0      runc:[2:INIT]
fv-az28-19       test-sigsnoop-9… test-pod                       test-pod                  15269   15283   SIGTERM          0      sh

Let's discuss this in the comments.

Rebased after merging changes on trace/tcp gadget on https://github.com/kinvolk/inspektor-gadget/pull/937 that created conflicts.

I rebased it to include #945 which solves the problems in the integration tests. This PR is now ready for the final review.
cc @mauriciovasquezbernal @flyth

One thing, maybe: in the meantime (until all gadgets are using the columns lib), maybe it's better not to use autoscale, since it would be inconsistent between the gadgets.

Yeah, it will add (another) inconsistency, but the problem with not enabling autoscale is that we are setting the k8s columns to 30, so those columns will end up taking all the space on small screens. In addition, this PR is already introducing inconsistencies because the columns of the gadgets using the library will be truncated, and will use the ellipsis, while the current implementation doesn't. Thus, at this point, what is the difference between having 2 or 3 inconsistencies? I prefer to take advantage of all the potential of the library and speed up the transformation of the rest of the gadgets. WDYT?

One thing, maybe: in the meantime (until all gadgets are using the columns lib), maybe it's better not to use autoscale, since it would be inconsistent between the gadgets.

Yeah, it will add (another) inconsistency, but the problem with not enabling autoscale is that we are setting the k8s columns to 30, so those columns will end up taking all the space on small screens. In addition, this PR is already introducing inconsistencies because the columns of the gadgets using the library will be truncated, and will use the ellipsis, while the current implementation doesn't. Thus, at this point, what is the difference between having 2 or 3 inconsistencies? I prefer to take advantage of all the potential of the library and speed up the transformation of the rest of the gadgets. WDYT?

Yeah, you're right :)

@flyth do you think it's possible to implement a logic like: if the terminal is very wide give the maximum to some columns and use all the remaining for a specific one. (In this case, give 30 to pod and the remaining space to args)?.

Yeah, good idea to have a maximum and probably a minimum as well that are considered when auto-scaling. Also, when it's a int|uint(8|16|32|64), we can set a fixed size/maximum automatically, maybe with something like width:auto or width:type. I'll open another issue/PR for that later/tomorrow :)

@mauriciovasquezbernal, I applied your suggestions and set almost all the int|uint(8|16|32) to fixed. I added some examples of output in the comments.
BTW, I had to rebase as https://github.com/kinvolk/inspektor-gadget/pull/961 created some conflicts.


fix: removed extra blank link between section

Just following a tutorial. Feel free to close it.
Checklist:

[ ] I have read freeCodeCamp's contribution guidelines.
[ ] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the main branch of freeCodeCamp.
[ ] I have tested these changes either locally on my machine, or GitPod.

Closes #XXXXX

Thank you, for opening this pull request.
This is a standard message notifying you that we've reviewed your pull request and have decided not to merge it. We would welcome future pull requests from you.
Thank you, and happy coding.


Error in Intel Edison

I am trying to run this code in Intel Edison with mraa library but it gives me error. Is not the library compatible with Intel Edison (Yocto Linux)?

Platform/operating system (i.e. Raspberry Pi with Raspbian operating system,
Windows 32-bit, Windows 64-bit, Mac OSX 64-bit, etc.): Intel Edison Yocto 1.7.3

Python version (run python -version or python3 -version):  Python 2.7

Error message you are receiving, including any Python exception traces:
root@gozdewbl:~# python ads1115.py
Traceback (most recent call last):
File "ads1115.py", line 7, in
adc = Adafruit_ADS1x15.ADS1115()
File "/usr/lib/python2.7/site-packages/Adafruit_ADS1x15-1.0.2-py2.7.egg/Adafruit_ADS1x15/ADS1x15.py", line 319, in init
super(ADS1115, self).init(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/Adafruit_ADS1x15-1.0.2-py2.7.egg/Adafruit_ADS1x15/ADS1x15.py", line 82, in init
self._device = i2c.get_i2c_device(address, **kwargs)
File "/usr/lib/python2.7/site-packages/Adafruit_GPIO/I2C.py", line 63, in get_i2c_device
busnum = get_default_bus()
File "/usr/lib/python2.7/site-packages/Adafruit_GPIO/I2C.py", line 55, in get_default_bus
raise RuntimeError('Could not determine default I2C bus for platform.')
RuntimeError: Could not determine default I2C bus for platform.

List the steps to reproduce the problem below (if possible attach code or commands
to run):
import Adafruit_ADS1x15
import mraa
import time
import numpy

led = mraa.Gpio(20)
adc = Adafruit_ADS1x15.ADS1115()
GAIN = 1
value = led.read()
adc0 = adc.read_adc(0, gain=GAIN)
voltage = (adc0 * 0.1875)/1000
while True:
led.write(1)
print "led: ", value
print "voltage: ", voltage
time.sleep(0.50)
led.write(0)
print "led: ", value
print "voltage: ", voltage
time.sleep(0.5)

Hi! We are deprecating this library. This issue is either fixed or may need updating for the new library:
https://github.com/adafruit/Adafruit_CircuitPython_ADS1x15
Please see issue summary here:
https://github.com/adafruit/Adafruit_Python_ADS1x15/issues/13


Bash commandline commands, outside of UI

Is your feature request related to a problem? Please describe.
As I interpret the documentation, pluGET can only run commands from its own command line UI. This might make it problematic to manage from other scripts, such as bash, where the UI might get in the way of the functionality.
If this functionality is already present, close this ticket and mention it in the documentation.
Describe the solution you'd like
I'd like to be able to run commands directly from bash command line, such as being able to run ./launcher.sh update all to update all plugins, or ./launcher.sh update serverjar 'PaperMCVersion' to update the server. A argument flag could be useful to declare when it is being used this way.
An example of software being used this way is SteamCMD.
Describe alternatives you've considered
N/A
Additional context
I've not yet installed pluGET, though it interests me. My concern is being able to use it for automating server maintenance, which I try to do as much as possible so I can focus on management.

Hey @Freddo3000,
thank you for your suggestion!
This is a good enhancement but unfortunately this isn't too high on the priority list as of now.
There are other things that need to be done before i can work on your issue.
I will let the issue open for the future!

pluGET would very much benefit from this. I can kinda make do by sending commands through tmux consoles.

Hey @Freddo3000, @rbos,
i added this in version v1.7.0
Now you can call directly pluGET commands from the console like this:
py pluget.py check all

Have a good day guys :wave:


Draft: no-custom-classname plugin support

Plugin support for no-custom-classname rule
Description
This PR changes the strategy used to determine if each classname belong or does not belong to Tailwind CSS.
This new strategy allow to detect classnames generated by plugins.
Fixes:

#97
#124
#127
#129
#130
#131
#145
#148

Type of change

[x] 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

How Has This Been Tested?
Tested via unit tests visible in this PR
Checklist:

[x] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have been merged and published in downstream modules
[ ] I have checked my code and corrected any misspellings

This is a draft because the classnames generated by plugins are not always present in groups.js, they would not get sorted as expected.
I have to find a way to determine if a classname is generated by a plugin and which one...

Maybe the officialSorting should default to true with the next release... and maybe custom order based on the groups.js file should be removed because the custom ordering logic is based on the latest part of each classname (containing the targeted property).
WDYT ?

If you are testing<EMAIL_ADDRESS>Take a moment to inspect the latest changelog:
https://github.com/francoismassart/eslint-plugin-tailwindcss/tree/fix/no-custom-classname-plugin-support#readme

Tested on my main project with no issue but a lot of re-ordering 😅

I didn't formally create a GH issue, but this release solved some of the issues with classnames generated from plugins (#97)! Thanks for the work updating this! Updated to v3.6.0 in my team's project and it works well.
Cheers! 🎉


How subscribing to updates

How can I watch updates on my datatable like notion does with
wss://msgstore.www.notion.so/primus ? Any plan to do so?

Any news?

@Dekhnar currently the recommended way is to poll the relevant database using the query database endpoint.
We're trying to keep the issues in this github repo specific to the SDK itself, so I'm closing this issue. For feature requests and bug reports, you can email<EMAIL_ADDRESS>or to get help from the community you can join Notion Devs slack.


Neon.Postgres: Add PreparedCommand

It would be really nice to add a PreparedCommand class that handled some of the details of command preparation as well as helping developers abstract their database operations.  Here's what I'd like to accomplish:

[x] Allow developers to define a single PreparedCommand instance for a given query and then use this instance to clone commands that can be executed on the database with this class handling preparation transparently and also abstracting parameters somewhat.
The stock NpgsqlCommand usage is a bit awkward because you need to pass the same SQL text to the command that's prepared and then to the commands that are actually executed and the developer also needs to manage the parameters in multiple places as well.

[x] Explain coding patterns that can be used to extend the class providing some ORM features.  The idea is to provide guidance on how developers can add these abstractions while still retaining tight control over performance.

Done for neonLIBRARY v2.11.0


Error "No primary interface (HmIP-RF, BidCos-RF) defined" starting from version 1.71.0

I agree to the following

[X] I have read the documentation right now
[X] I have read the FAQs right now
[X] I am aware of the latest release notes
[X] I am aware that an integration that was installed via HACS also needs to be updated via HACS
[X] The Backend (CCU/Homegear/...) is working as expected, devices are taught in and are controllable by its own UI.
[X] I am running the latest version of the custom_component (and Home Assistant)

The problem
Hi,
first of all, many thanks for the great and continous work you are doing!
I used HomematicIP (local) for several years now and it has been working great so far. Unfortunately I encounter a critical error starting with the versions 1.71.0 and 1.72.0. Last working version for me is 1.70.0.
The integration doesn't start any more, all entities are unavailable and it is not even possible to configure the integration any more. The integration shows a message like Setup error. Check protocolls (translated by myself).
By clicking on "Configure" there is just an error message telling
Config flow could not be loaded: 500 Internal Server Error Server got itself in trouble.

Switching back to 1.70.0 solves the problem, everything is working again as expected.
The primary error message from logs seems to be
No primary interface (HmIP-RF, BidCos-RF) defined

My setup with Raspberrymatic doesn't involve any RF devices. I'm just using plain Homematic Wired devices with HMW-LGW which are usable directly from Raspberrymatic without any problems.
Any help is greatly appreciated and if I should contribute more information, please let me know.
What version of HomematicIP (local) has the issue?
1.71.0, 1.72.0
What was the last working version of HomematicIP (local)?
1.70.0
What type of installation are you running?
Home Assistant OS
What type of installation are you running for your homematic backend?
RaspberryMatic HA-Addon
Which version of your homematic backend are you running?
<IP_ADDRESS>41122
What hardware are you running for your system?
Intel NUC5, KVM/qemu VM
Which config details do you use

[X] TLS
[ ] callback data (see)

Which interfaces do you use?

[ ] Homematic IP
[ ] Homematic (Bidcos-RF)
[ ] Groups (Heating-Group)
[X] BidCos-Wired (HM-Wired)

Diagnostics information (no logs here)
home-assistant_homematicip_local_2024-12-05T09-47-25.929Z.log
Log file extract. Anything in the logs that might be useful for us? The log (Setting/System/Logs -> load full log) is the best source to support trouble shooting!
Same as in the uploaded file

Additional information
No response

Please enable Bidcos as additional interface

Just wait for the next Release.


stats : add congestion stats in quicly_stats_t

Having access to CC information would be very useful for performance measurement applications. @kazuho Could you merge this PR?

Thank you for the PR and for the patience. This is a sensible change, merged to master.
Though please do note that the exposure of quicly_cc_t is likely to change, as some of the properties are actually the internals of a particular CC algorithm. At sometime in the future, we are likely to cherry-pick what can be exposed as part of a stable API.


Javalin 2.0 wishlist/discussion

[ ] Use Set instead of List for the AccessManager roles.
[ ] #157
[ ] #127
[ ] Remove ctx.bodyAsClass() and rework ctx.json() to just set content-type
[ ] Separate context and plugins
[ ] Fully support async / future / kotlin coroutines ?
[ ] Better plugin integration?

Adding swagger-ui integration would be useful.  Example:

http://petstore.swagger.io/
https://springfox.github.io/springfox/docs/current/#springfox-swagger-ui
https://jooby.org/doc/swagger/

@weejim76 are you interesting in helping with this?

Full support for kotlin coroutines would be awesome.

Consider renaming param to pathParam and creating param which returns any sort of param.


feat: Export Schedule to .ics Format

Summary:
The approach to tackle this issue is by using ics. Using the available schedule data, parse the data into ics supported format, then download the calendar file. However, the content of the .ics file is still an assumption, need confirmation from maintainers. There is also an issue regarding the date of the classes. Since we don't know (from API) when the term starts and ends, I decided to make the events happening around the schedule's created time.
Changes:

Add download .ics schedule functionality
Create MoreOptions Component
Unit Tests!

Screenshots

Resolves #14

Hi kak @priambudiLB, may I try resuming this PR?

Hi kak @priambudiLB, may I try resuming this PR?

Yes you may 🙏


Switching npm commands

Added npm start for local dev tasks and npm run build for building changes.

@knynkwl Did you have additional suggestions for these tasks? Wanted to include your aliases here, too.

Yeah, I was thinking just keeping what you originally had and adding two new tasks.
Looks like @mdxprograms is wanting to change watch to start which I'm cool.
This is what I was originally proposing:
"scripts": {
    "watch": "./tasks/watch.sh",
    "dev": "./tasks/watch.sh",
    "start": "./tasks/build.sh"
    "build": "./tasks/build.sh"
  },

This is what I am proposing with @mdxprograms's updates:
"scripts": {
    "start": "./tasks/watch.sh",
    "dev": "./tasks/watch.sh",
    "build": "./tasks/build.sh"
  },

this would add two tasks doing the same thing though. I just like to type npm start when running locally. Vuejs uses npm run dev and react create-react-app uses npm start. I think it's kinda a toss up between the two.

@mdxprograms I like the idea of looking at the ecosystem to see what the standard is. When you get some time do you mind investigating a couple additional tools and what they use for these?
One thing I'm wondering though is if Vue.js and create-react-app are valid comparisons. Isn't create-react-app is a boilerplate for a React project while Vue.js's scripts are to compile the library itself?

Vue-cli is the setup I was actually referring to. It's the equivalent to create-react-app for Vuejs. With the Vue-cli you can pick a few different options on your boilerplate, but it uses the same command across the board. I can look at a few other setups for comparisons.

It looks like by default the Angular 2 cli project uses serve, but they advice setting up start to add some recommended local script settings. I think the big three for me are React, Vue, and Angular. Is there any others we should check?

It looks like npm's default for the start task is to run node server.js. Given this, it sounds like a watch-type task is expected here.
I'm okay with these changes, @mdxprograms plus the addition that @knynkwl made.
Let's do this:
"scripts": {
  "start": "./tasks/watch.sh",
  "dev": "npm start",
  "build": "./tasks/build.sh"
},

That way npm run dev is just an alias for the start task.
Mind making that change, @mdxprograms and seeing if that works okay?

when running the watch process I'm getting: GET http://dummyimage.com/320x240/000000/555555 net::ERR_CONNECTION_TIMED_OUT
Are you guys getting this by chance?
It looks like http://dummyimage.com is down at the moment. That would be the reason...

I'm going to stop referencing that site and just adding a dummy image for this. I'll have an update soon!

Ok sounds good @aaronbushnell! I just pushed up the the command addition for npm run dev to the npm_command_change branch as well.

Okay, try merging master into your branch now!

I created a PR with the actual branch instead of master to master. https://github.com/trendyminds/project-starter/pull/34

Didn't see the additional dev script in your README or package.json, @mdxprograms

Just added 👍


RenderObject.flushLayout should loop until _nodesNeedingLayout is empty

RenderObject.flushLayout should loop until _nodesNeedingLayout is empty

LGTM.


Relax shape constraint in dot_product_attention to allow MQA and GQA

Many modern architectures use either GQA or MQA rather than MHA, but dot_product_attention allows only MHA by enforcing query, key and value should have the same number of heads:
https://github.com/google/jax/blob/e52dc7ed15817c7861a2a30b1827684522cccf28/jax/_src/nn/functions.py#L894-L896
However, CuDNN FMHA already supports MQA and GQA, and _dot_product_attention_xla can be easily refactored to support these modes as it only requires some reshape operations and modifications to einsum. In fact, it already supports MQA and matches the output of CuDNN FMHA, so the remaining work is to refactor _dot_product_attention_xla for GQA and relax shape constraints in dot_product_attention.
I can also raise a PR for it if it's ok.

`I want to work on it


Wrong content type in JsonBody

When using Amp\Http\Client\Body\JsonBody, the content type is set to application/json; charset=utf-8 when application/json should be used. I noticed it by accident. Here this discussion might be helpful: https://stackoverflow.com/questions/9254891/what-does-content-type-application-json-charset-utf-8-really-mean

It might not be necessary, but why should it be wrong?

Specifying charset for JSON is redundant because JSON assumes Unicode character encoding. Perhaps this is not a bug, but an overstatement. Personally, my experience is that the content type for JSON never contains a charset. A few years ago, I ran into an issue where the other side wouldn't accept my JSON when I specified a charset. I have since learned that the correct content type for JSON is application/json.