TextView not expanding or collapsing when using ExpandableTextView

Hi,
Thanks for creating this ExpandableTextView, it is exactly what I am looking to do, however, I'm not sure what I am missing because the textview is not expanding or collapsing for me.
I have the following ExpandableTextView in my layout:
<at.blogc.android.views.ExpandableTextView
                android:id="@+id/tv_JobDesc"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="14sp"
                android:textColor="@color/laborswipe_darkgray"
                android:text="aasdf
                 a
                 a
                 a
                 a
                 "
                android:maxLines="5"
                android:ellipsize="end"
                android:background="@color/white"/>

I am trying to expand the ExpandableTextView in my adapter class like this:
public class JobAdapter extends ArrayAdapter<Job> {
    private final Context context;
    private final ArrayList<Job> jobs;
    private final int layoutResourceId;
    private ExpandableTextView desc = null;
    private Button expand = null;
    private boolean isExpanded = false;

    public JobAdapter(Context context, int layoutResourceId, ArrayList<Job> jobs) {
        super(context, layoutResourceId, jobs);
        this.context = context;
        this.jobs = jobs;
        this.layoutResourceId = layoutResourceId;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View view = convertView;
        ViewHolder holder = null;

        LayoutInflater inflater = (LayoutInflater) context.getSystemService((Activity.LAYOUT_INFLATER_SERVICE));

        if (view == null) {
            view = inflater.inflate(layoutResourceId, parent, false);

            holder = new ViewHolder();
            holder.title = (TextView)view.findViewById(R.id.tv_jobTitle);
            //holder.description = (ExpandableTextView)view.findViewById(R.id.tv_JobDesc);
            desc = (ExpandableTextView)view.findViewById(R.id.tv_JobDesc);
            //holder.expand = (Button) view.findViewById(R.id.btn_descExpand);
            expand = (Button) view.findViewById(R.id.btn_descExpand);

            view.setTag(holder);
        } else {
            holder = (ViewHolder)view.getTag();
        }

        Job j = jobs.get(position);

        holder.title.setText(j.getJobTitle());
        //holder.description.setText(j.getDescription());
        desc.setText(j.getDescription());
        // set animation duration via code, but preferable in your layout files by using the animation_duration attribute
        desc.setAnimationDuration(1000L);

        // set interpolators for both expanding and collapsing animations
        desc.setInterpolator(new OvershootInterpolator());

        // or set them separately
        desc.setExpandInterpolator(new OvershootInterpolator());
        desc.setCollapseInterpolator(new OvershootInterpolator());

        //when user clicks the expand/collapse button, expand or collapse the description field
        holder.expand.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                System.out.println("Expanding Button Clicked!");
                desc.toggle();
                expand.setText(desc.isExpanded() ? "Collapse" : "Expand");
            }
        });

        // listen for expand / collapse events
        desc.setOnExpandListener(new ExpandableTextView.OnExpandListener() {
            @Override
            public void onExpand(final ExpandableTextView view) {
                Log.d("TextView", "ExpandableTextView expanded");
            }

            @Override
            public void onCollapse(final ExpandableTextView view) {
                Log.d("TextView", "ExpandableTextView collapsed");
            }
        });

        return view;
    }

    static class ViewHolder
    {
        TextView title;
        ExpandableTextView description;
        Button expand;
    }
}

I'm not sure what I am missing, am I not able to use the ExpandableTextView in a custom adapter?
Thanks for the help!

Hi!
thanks for using ExpandabletextView and reporting this issue. I'll try to reproduce this issue and provide a solution / fix for your problem. In the meantime, can you double check that the length of the job descriptions exceeds the max length of the TextView?
How urgent do you need a solution for this issue?
Thanks again!

Thanks @Cliffus , its not super urgent, just using this ExpandableTextView on a project I am working on. I'm pretty sure it has to do with m layout as it is a bit complex. I've attached my jobcard layout file to this comment, as well the main layout that my activity uses. This activity combines the jobcard layout used by the custom adapter and the main layout. Please let me know if there is more I can provide to help you help me :)
activity_main.txt
jobcard.txt

Thanks for providing your layout files, this will help me a lot!
I'll keep you posted.

I used the job card layout as the layout for my Main activity, and it works like a charm. I noticed you use the SwipeCard library (https://github.com/Diolor/Swipecards) in your application. It is possible that it contains some kind of layouting / measuring issue, causing ExpandableTextview not to work properly.
One other thing you can try is to remove the interpolator stuff (setExpandInterpolator() and setCollapseInterpolator()). Another user reported to me that she had issues when using the OvershootInterpolator, but I doubt this will fix your issue.

Nope, removing the interpolator lines did not fix it for me. When you used the job card layout, did you use it with the <merge> similar to my activity_main.xml? Do you think that has something to do with it possibly?

I'm also using the  tags, but it is still working over here. There are some things you can try to do:

try to remove the fixed heights on your viewgroups / layouts, and replace them with wrap_content. It's possible that because of the fixed heights, the TextView doesn't expand properly
simplify your layout file, maybe you can achieve the same layout by only using 1 RelativeLayout containing all the child views
wrap the ExpandableTextView with a FrameLayout, but I don't think this will help for you

@Cliffus thanks for the help! I tried changing my layout to this:
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <at.blogc.android.views.ExpandableTextView
        android:id="@+id/tv_JobDesc"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="asdfaa
        \n aaaaaaaaa
        \n aaaaaaa
        \n aaaaaaa
        \n aaaaaaaaaaa
        \n aaaaaaaaa
        \n aaaaaaaaaa
        \n aaaaaaaaa
        \n aaaaaaaa"
        android:maxLines="2"
        android:ellipsize="end"
        app:animation_duration="1000"/>

    <!-- Optional parameter animation_duration: sets the duration of the expand animation -->

    <Button
        android:id="@+id/btn_descExpand"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="expand"/>

</LinearLayout>

The field still does not expand, do you think this has to do with using a custom adapter? I figured using a simple layout would work, but still no expanding textview so it must be my the Swipecards or the custom adapter I am using...

it seems to me that this could be an issue in the SwipeCards library because ExpandableTextView doesn't override any setText() methods, it only alters layout params while animating.
maybe you can report the issue over there, and replace the ExpandableTextView with a default TextView? (because the setText() method also doesn't work for you)

Thanks for all the help @Cliffus! I have reported this issue on the SwipeCards library, hopefully someone responds so I can get this resolved :). I will close this issue now.

you're welcome!
if you need help with any other issues, let me know!


Migrate all @import at-rules to @use in Sass

Describe the new a11y feature or project enhancement

While contributing to this project, I noticed that there are quite a few @import rules being used for importing stylesheets, mixins, vars etc. Since there is awhile before the Sass team deprecates @import in dart-sass for good, this isn't super high priority but it is a good idea to begin the migration from @import to @use sooner than later.
I performed the migration from @import to @use for mdn/mdn-minimalist in this PR (for reference on what would potentially happen during the migration here).
Describe the solution you'd like
Convert all @import rules to a @use rule and more specifically add a index file into each directory of partials/mixins/etc and then use a single @use "some-dir" as * (without a namespace) rule to load in the entire directory in the main Sass file which gets compiled. Loading using @use and index files (with @forward in the index files) allows us to load all of a directories content (partials, vars, mixins, functions etc) with a single @use rule which is super nice.
Once I can start making some changes on a feature branch the overall structure will hopefully be a bit more clear as I didn't include any code examples here.

Link(s)

https://sass-lang.com/documentation/at-rules/use
https://tannerdolby.com/writing/using-index-files-in-sass/

I'm happy to be assigned this one too, if that is okay @jackdomleo7! 🚀

Sounds like a good idea and good to be on the ball with these things. I recently replaced node-sass with dart-sass in this project so that's good too. I didn't even realise dart-sass were planning on deprecating @import.


Exception in generating swift file

Hi there, I follow the instructions in the main page to generate a swift file, however I got the ERROR like blew. Anyone could help? thanks.
bogon:FlatBuffersSwift-master-2$ java -jar fbsCG.jar -fbs FlatBuffersSwiftTests/contacts.fbs -out FlatBuffersSwiftTests/contacts_fb_.swift -lang swift -lib import
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli/ParseException
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:375)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:56)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli.ParseException
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:466)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:563)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496)
... 3 more

I just downloaded the version on master as zip. Unzipped it and run ./generate.sh generating code went as expected.
Could you please tell. me following parameters of your machine:

OS
java version
is FlatBuffersSwiftTests/contacts.fbs the one included in repo

Dear maxim ,thanks for your response. I have found the problem due to the jdk version.
Thanks,
Xuemin
Sent from my iPhone

On 5 Feb 2018, at 9:49 PM, Maxim Zaks<EMAIL_ADDRESS>wrote:
I just downloaded the version on master as zip. Unzipped it and run ./generate.sh generating code went as expected.
Could you please tell. me following parameters of your machine:
OS
java version
is FlatBuffersSwiftTests/contacts.fbs the one included in repo
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


omnibus: fail the task when omnibus can't be installed

What does this PR do?
Actually fail the task when omnibus can't be installed.

Motivation
We currently continue when omnibus fails to install, which leads to confusing failure later on: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/jobs/578098364

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Rerun of the failing pipeline with this commit included: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/jobs/578140216

I would appreciate adding a test to https://github.com/DataDog/datadog-agent/blob/chouquette/fail_install_omnibus/tasks/unit_tests/omnibus_tests.py though I admit it's not super straightforward.

I would appreciate adding a test to https://github.com/DataDog/datadog-agent/blob/chouquette/fail_install_omnibus/tasks/unit_tests/omnibus_tests.py though I admit it's not super straightforward.

Done, and it allowed me to spot another failure we were silent ly ignoring :partying_face:

/merge

/merge --cancel

cancelling since the CI is currently failing systematically

/merge


Replace Environment with a HealthCheckRegistry

Before this change to create an instance of atam4j you had to pass in a dropwizard environment instance in order to register a health check and create a scheduler. I've replaced the need for an Environment with a HealthCheckRegistry instance and rolled our own scheduled executor. I've kept the dropwizard core dependency since we may need to expose http endpoints in the future to perform tasks/render views.
Resolves #32

Nice, I like this. Will have a closer look soon and merge..

I like this... better to keep the dependencies on dropwizard as small as possible.  Thanks very much Tyrone.


Tag Helper Rewriting is brittle

As demonstrated in https://github.com/dotnet/razor/issues/10186 (numerous examples) and https://github.com/dotnet/razor/issues/10426, the tag helper attribute value rewriting portion of the razor compiler is very brittle. This is actually a long-standing issue that was more broadly spotlighted by our changes to runtime code generation to make it more specific; there are several examples of attribute values that have been broken for many years. This is due to how tag helper attribute value parsing works: the attributes are interpreted as HTML at first. Then, if the tag is determined to be a tag helper, rather than a pure HTML tag, and if the attribute is mapped to a property of that tag helper, we reinterpret the provided attribute value as if it was implicit C# expression. Unfortunately, this is not really possible to do without reparsing the entire rest of the document, which the Razor compiler does not do; further, it would be a major performance regression if we attempted to do so. Here are a few examples of where this has been broken for several major versions:
<taghelper objectprop='"'/> am I a string value?"' />
<taghelper stringprop='"'"' />
<taghelper objectprop='@"string"' />

The main purpose of this issue is try and figure out how far we want to go in fixing these bugs, vs simply documenting them as errata and leaving them unfixed. The last of these examples seems like it will be fixable without much trouble, but the first two would require major rework of the rewriter and downstream processing stages to work. Thoughts and opinions are welcome.

I do not think the first two examples are broken. The current parsing makes sense to me - if you do not use explicit C# transition @(...), we parse as HTML, i.e., if the attribute value starts with quote ', you cannot use that inside. We should spec it like that.

. We should spec it like that.

Generally agree. Essentially within a tag helper and you want C# behavior then use the @(...) transition to be explicit. Otherwise your results may vary due to the issues outlined in the text.

As a user, I would like these cases not to compile or, at the very least, raise a warning recommending an explicit @(...) transition.
Thanks so much for the good work, guys.


MIT license for clarity, vs. your custom license

The license you have up is not easy to work with, from a legal standpoint, because it does not fall under one of the standardized software license that have been evaluated by the legal industry, and where case history exists.  Because of that risk, you will get limited corporate adoption, thus collaboration.
Since your license essentially reads like an MIT license, I encourage you to change it for the ends of more involvement from the corporate community. If you chose GPL or its variants, you will specifically limit corporate involvement due to copyleft.
Thanks!

The license is MIT. Sorry if that somehow is unclear. I will update the readme.


Text duplicated in the Engagement Details, Sensitive Information and Biography data fields

If any text is entered in these three fields, the text is duplicated when the focus leaves the respective data field.
For example:

Create a new report
Type or copy text into the "Engagement details" data field
Click anywhere else on the report with the mouse

Result: the text entered into the "Engagement details" data field is duplicated in the data field.
However, after clicking the "Preview and submit" button, the duplicated text is no longer displayed.  When editing the report after the initial "Preview and submit," the duplicated text is also no longer displayed.

@dspCarlson I can reproduce the issue, we will have a look at it.


pods created locally on nodes should be represented

Forked from #1518.
@thockin wrote: the master should become aware of pods that are running
but that it did not create, and manage in a read-only mode
The apiserver should return such pods in list/get operations, and the scheduler should be aware of such pods.

Dupe of #4090 and #490


Timeout while waiting for Ingress istio-ingress.istio-system

The underlying problem is that instances are created in the created VPC, the target group is created in or assigned to a VPC that doesnt exist.
ingress[] is empty
Cannot find Ingress istio-ingress.istio-system

As discussed yesterday , the description of this ticket is too general.  We need to change this to a specific root cause


Freez Column Issue

I want to freez first 2 columns on horizontal scroll, i have given css as {positon: 'fixed'}  to the first column but it doesn't work and second column overlaps the first. please give a solution to freez some columns from the left.

Column freezing is not supported.

There have been several requests made to add this as a feature but, as of now, this is not likely to happen too soon.


Homework Chapter1/Lesson1and2

Submitting my solution for chapter 1 lesson 1 and 2.

I've misunderstood the original lesson objectives, should be fixed now.


Teacher Tool: Change block display

Overview
This changes the inline block display for the "Block used count times" criteria in the teacher tool. I've reused the approach taken by the monaco editor to generate the javascript toolbox entries (meaning some of that code has been refactored into a shared helper method). This approach looks at the attributes for a block (mostly the block string), then breaks it up into labels, parameters, and breaks. Those sections are returned and can be displayed however the caller sees fit.
I cache the information to minimize any loading time (fewer messages to the iframe) and to reduce the likelihood of ending up with a block where we can't get a display (i.e. a rubric with a block loaded from an extension, opened later from a project without that extension installed).
The part where I explain some weird decisions
There are a few things I don't love about this change, mostly revolving around built-in blocks which lack the attributes used to generate the different "parts". In these cases, the monaco editor uses snippetNames defined on the blocks in monacoSnippets.ts. I've opted for something similar, but since the monaco toolbox lacks some of the blocks that the block-based toolbox has (on start, repeat, etc...), I've gone ahead and updated the blockSnippets.ts file instead of trying to reuse the monaco ones. There's some duplication here, but I think this feels like the right place for it regardless.
The part where I explain some weirder decisions
Some blocks (specifically, some built-in blocks) have multiple entries in the toolbox which result in blocks of the same id. For example, we have different toolbox entries for plus, minus, times, and divide, but they're all the same math_arithmatic block, so we only show one entry in the block picker and it passes on any of those blocks (since BlockExists validation is based on blockId). In an ideal world, I'd change the BlockExist validator to allow us to check for these separately, but that's out of scope for the current teacher tool work. Instead, I've created a workaround where multiple matches are simply combined into one string, concatenated with " | ":

Similarly, there are some blocks that only appear in the toolbox once but still have multiple different dropdown options that make it tricky to find a descriptive overall snippet name. (Notably, the "Square Root" and "Round" blocks.) In these, I've gone with a similar approach of just piping together the different operations in the snippet name. I look forward to the day I can change BlockExist and remove all this code 🙂

Free Trial
Upload Target: https://makecode.microbit.org/app/c07bd3857b9afa5e604d68f1d16dcbe2bd536dcd-bb5f0ab19d
Screenshots
Before

After

Unrelated to code or anything, I just wanted to say your PR description is one of my favorites that I've seen. In addition to being very readable, the subcategory titles are awesome. I think I'm going to start using "Free Trial" with my upload targets now :smile:.

Unrelated to code or anything, I just wanted to say your PR description is one of my favorites that I've seen. In addition to being very readable, the subcategory titles are awesome. I think I'm going to start using "Free Trial" with my upload targets now 😄.

This is the Writer in Thomas coming out.  I like the parts where weird decisions are being explained ;-)


typstyle: 0.12.5 -> 0.12.6

Things done
Changelog: https://github.com/Enter-tainer/typstyle/blob/refs/tags/v0.12.6/CHANGELOG.md
cc @drupol

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 361253

x86_64-linux

:white_check_mark: 1 package built:

typstyle

aarch64-linux

:white_check_mark: 1 package built:

typstyle

x86_64-darwin

:white_check_mark: 1 package built:

typstyle

aarch64-darwin

:white_check_mark: 1 package built:

typstyle


Better diagnostic when linker script was missing

Before:
Error: .`.defmt` section not found

After:
Error: `.text` section is missing, please make sure that the linker script was passed to the linker

Closes #42

This will save people getting started some time, I can vouch for that! :laughing:
Thanks @jonas-schievink


Spike/83 consumer retry

What this PR changes/adds
Possible solution for consumer side retry. See my comment in upstream issue 336
_In TransferProcessManagerImpl.sendConsumerRequest, if the request fails we should leave the request in REQUESTING state, incrementing the stateCount.
Using the stateCount as a retry counter, we should apply exponential wait between retries, and when a maximum number of retries is reached, transition the transfer process to the ERROR state.
It does not seem necessary to use the Failsafe library for this (which would increase complexity), we can just use the state machine loop, and filter requests ( in REQUESTING state) where the state timestamp plus the exponential wait (based on state count) is before the current time._
Why it does that
Briefly state why the change was necessary.
Further notes
List other areas of code that have changed but are not necessarily linked to the main feature. This could be method
signature changes, package declarations, bugs that were encountered and were fixed inline, etc.
Linked Issue(s)
Closes # <-- insert Issue number if one exists
Checklist

[ ] added appropriate tests?
[ ] performed checkstyle check locally?
[ ] added/updated copyright headers?
[ ] documented public classes/methods?
[ ] added/updated relevant documentation?
[ ] added relevant details to the changelog? (skip with label no-changelog)
[ ] formatted title correctly? (take a look at the CONTRIBUTING and styleguide for details)

Codecov Report

Merging #168 (a0ea524) into main (e200d9e) will increase coverage by 0.07%.
The diff coverage is 81.96%.

@@             Coverage Diff              @@
##               main     #168      +/-   ##
============================================
+ Coverage     61.15%   61.22%   +0.07%
- Complexity     2228     2233       +5
============================================
  Files           586      586
  Lines         12637    12672      +35
  Branches        901      903       +2
============================================
+ Hits           7728     7759      +31
- Misses         4485     4490       +5
+ Partials        424      423       -1

Impacted Files
Coverage Δ

...connector/transfer/core/CoreTransferExtension.java
0.00% <0.00%> (ø)

...fer/store/memory/InMemoryTransferProcessStore.java
96.61% <ø> (-0.06%)
:arrow_down:

...pse/dataspaceconnector/spi/retry/WaitStrategy.java
0.00% <0.00%> (ø)

...ceconnector/spi/retry/ExponentialWaitStrategy.java
75.00% <83.33%> (-15.91%)
:arrow_down:

...sfer/core/transfer/TransferProcessManagerImpl.java
79.10% <86.53%> (+3.25%)
:arrow_up:

Continue to review full report at Codecov.

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


Implement delegation features on staking

Summary
On the staking app, we want to enable a mode where users can delegate their stakes to another wallet.
This delegate can then mint sUSD on behalf of the other wallet.
This is to enable hotwallets to manage your cold storage wallet or SNX in custody with a thirdparty custodian.
There needs to be Delegate management from the main account. Then delegate mode to allow your hotwallet to recognise the main coldstorage wallet that has delegated to you to manage staking.
Funds transfers are not allowed by delegates. All they can do is

mint
burn / burn to target
claim
exchange

All to manage the accounts c-ratio, fee claims and hedging debt but cannot send or spend any funds.
This will replace https://delegatr.synthetix.io/

[ ] Delegatr mini-app (delegate uses this app to perform actions, can be used from their mobile phone)
[ ] Full Delegation mode

Management mode notes
Add Delegate section to wallet modal:
list of delegates
add a delegate
remove a delegate
Also add the ability to approve certain functions (MVP = approve / remove all)
@clementbalestrat ready for development
@ajsantander to manually verify
Dev Tasks

[x] Integrate as per UI design
[x] ~Fix issue in DelegateApproval contract https://github.com/Synthetixio/synthetix/pull/1181~
[x] ~Get this SIP approved for the above contract change.~

QA Tasks

PR https://github.com/Synthetixio/staking/pull/385
[x] Visit https://staking-git-feat-delegate-synthetixio.vercel.app/delegate
[x] Connect wallet
[x] Switch to kovan network
[x] Ensure to see an address input.
[x] Enter any address.
[x] Expect to be able to select "powers" e.g. ALL, MINT below it.
[x] Submit the form.
[x] Expect a new entry to appear in the addresses table on the right.
[x] Expect to the able to toggle any of the "powers" checkboxes and result to is reflected.
[x] If the "ALL" power is set, expect the power checkboxes to be disabled.

Feedback:

Allows for an action to be resubmitted without failing on a smart contract level or warning on the UI level. [FIXED]
Allows for delegating to itself. [FIXED]
No multiple choices are allowed e.g. mint + claim
If ALL is selected then it has to be disabled before choosing a more fine-grained configuration.

Proposed UI:
Delegate New Wallet:
https://www.figma.com/file/M58E2cxkOgTPWMHRX7FTna/Staking-User-Flows?node-id=2671%3A0
Manage Powers:
https://www.figma.com/file/M58E2cxkOgTPWMHRX7FTna/Staking-User-Flows?node-id=2829%3A3281
Delegated Wallet:
https://www.figma.com/file/M58E2cxkOgTPWMHRX7FTna/Staking-User-Flows?node-id=2672%3A358946

@vbstreetz do you want to take this card over also, Zoe should be finished with the designs today

@andytcf Sure. I just started working on the update today 👍

Moved to https://github.com/orgs/Synthetixio/projects/4

Added some 2 comment clarifications in figma.
Currently blocked by new subgraphs sync..

Paused working on the SIP that improves approval withdrawal of non-ALL powers because the current version is the intended behavior.

Hey @gberg1. Any idea why this is back in progress?

Moved tracking the SIP above to https://github.com/Synthetixio/SIPs/issues/435

@i-stam I've pushed a fix for the issue.

Hey @i-stam. I've pushed a fix for the first 2 issues:

Issue 3 & 4 require a contract change. Issue 4 is actually being addressed in that improvement SIP.

Thank you! Can you also link the PR that implements the contract changes here too?

@i-stam Hey. It's the same PR mentioned in the description. Here's the commit https://github.com/Synthetixio/staking/pull/385/commits/4ff503f4655fcef5a0712b7f6d7c29fc23028b86

Oh, the SIP about contract improvements is here https://github.com/Synthetixio/SIPs/pull/448

Now working on adding e2e tests before release on Monday.


Modal editor not displaying properly.

The dimensions for the controls on the Edit Question modal are not right.  Data is hidden and cut off in the display, even though it is in the database.
The dropdowns at the top and the Score fields are too small.
Please apply styling to show all of the data.

Is this only UI stuff? is there a problem with the displayed data?

I updated a few of the column breaks so that they display better on portrait page width displays.
There are still some edge cases that we can clean up, like the display for slider min/max/default


Add blog link in README

Wanted to add a blog link in Readme
Blog link : https://medium.com/@sidd0203/stichhub-38d01da27f37

I can add this sir. Please assign me this issue .happy to work with you

Okay @codewithnadeem14502 where are you planning to add a blog section to Readme, can you pls tell me this with screenshots pls, then I will assign you this issue

@Siddhant-Patil0203 I would like to be assigned to this issue. @codewithnadeem14502 are you still working on it?

@3kori go for it

I was planning on adding the blog link in a section of its own right before the feedback section or,

after the last sentence on the stichhub description.

Which one would be fine? @Naresh-chandanbatve

I was planning on adding the blog link in a section of its own right before the feedback section or,

after the last sentence on the stichhub description.

Add it before the feedback section

Ok, on it.


[Backport][v2.9] [BUG] Unable to create the CIS scan output because of the configMap size is exceeding 1 MB

backport: https://github.com/rancher/rancher/issues/47296

Validated on rancher v2.10-head

Created RKE2 harden cluster
Installed CIS released version 6.3.0, and ran v1.8 permissive profile scan on all above clusters.
Downloaded cluster scan report yaml.
Upgraded chart to 6.4.0-rc.1 version.
Ran the v1.8 permissive profile scans and all passed successfully.
Also downloaded cluster scan report yaml.
Compared the scan report yaml size and it's significantly reduced in CIS 6.4.0-rc.1 version.

Hence this issue can be closed.

we will need to mention this command in the docs
export REPORT="<scan-report-name>"
kubectl get clusterscanreport $REPORT -o json |jq ".spec.reportJSON | fromjson" | jq -r ".actual_value_map_data" | base64 -d | gunzip | jq .


Added redirect with identity action to allow cross-domain identity sharing.

Description
This adds an action that allows you to append the identity to urls and redirect to the new url. This is designed to work within a rule with a Core - click event. The click event should have a selector of 'a[href]'. Then you can filter links using conditions with %this.hostname% data element. Then the 'Redirect with identity' action will append the identity to the URL and redirect.
Related Issue

Motivation and Context

Screenshots (if appropriate):
Types of changes

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

Checklist:

[x] I have signed the Adobe Open Source CLA or I'm an Adobe employee.
[x] I have made any necessary test changes and all tests pass.
[x] I have run the Sandbox successfully.
[x] I've updated the schema in extension.json or no changes are necessary.
[x] My change requires a change to the documentation.

I'm going to merge now without creating a container builder. We can do that later.

Looks good to me!
In case there is only one instance configured, should we show it pre-selected and disabled?

Probably a good idea.


Update repository after transfer

See https://github.com/senzing-garage/garage-roadmap/issues/3

Pull requests:

https://github.com/senzing-garage/docker-xterm/pull/267


move test configuration parameters to config.h

I’ve moved the associated “openEEW test station” parameters to config.h in a PR to make it easier to switch between a  public “openEEW intergration test setup"  and a private “openEEW unit test setup"
Its been tested in my environment with hardware
WiFi was successfully connected
WiFi Connected
WiFi MAC: A8:03:2A:4D:CC:CC
ETH  MAC: A8:03:2A:4D:CC:CF
A8032A4DCCCC
ETH Started
Waiting for time
LED_FIRMWARE_DFU - Yellow
.LED_FIRMWARE_DFU - Yellow
.Time sync'd
Mon Apr 12 17:36:02 2021
Contacting the OpenEEW Device Activation Endpoint :
https://device-mgmt.openeew.com/activation?ver=1
Sending Device Activation : {"macaddress":"A8032A4DCCCC","firmware_device":"1.4.0"}
HTTP Response code: 200
HTTP post response payload: {"org":"7p7xwk","firmware_latest":"1.4.1","firmware_ota_url":"https://download.openeew.com/firmware-1.4.1.bin"}
OpenEEW Device Activation directs MQTT data from this sensor to :7p7xwk
Version 1.4.1 is higher than: 1.4.0
An OTA upgrade is required. Download the new OpenEEW firmware :
https://download.openeew.com/firmware-1.4.1.bin
LED_FIRMWARE_OTA - Magenta
Opening Server PEM Chain : /mybluemix-net-chain.pem
Read /mybluemix-net-chain.pem pem server certificate chain from SPIFFS
Starting OpenEEW OTA firmware upgrade...
E (9746) esp-tls: mbedtls_ssl_handshake returned -0x2700
E (9750) esp-tls: Failed to open new connection
E (9750) TRANS_SSL: Failed to open a new connection
E (9750) HTTP_CLIENT: Connection failed, sock < 0
E (9754) esp_https_ota: Failed to open HTTP connection: ESP_ERR_HTTP_CONNECT
E (9761) esp_https_ota: Failed to establish HTTP connection
The OpenEEW OTA firmware upgrade failed : ESP_FAIL
d:7p7xwk:OpenEEW:A8032A4DCCCC
MQTT_USER:use-token-auth  MQTT_TOKEN:OpenEEW-sens0r  MQTT_DEVICEID:d:7p7xwk:OpenEEW:A8032A4DCCCC
Attempting MQTT connection...LED_CONNECT_CLOUD - Cyan
MQTT Connected
Initializing sensor
Stopping...
Stopped
Range 2g
Low pass filter = 7
High pass filter = 0
Done initializing
Calibrating sensor
Calibrating device with 20 FIFO reads

This PR fails the DCO (Developer Certificate of Originality) sign-off.
You get one free pass ;-)   I'll accept the PR.
In the future, please include a -s in your git commit -s -m "message"    (where -s will include the "Signed-off-by:" and your name/email)

I had to resolve conflicts with this PR. Fixed.
But the patch introduces a regression in config.h because its reverts the version back to 1.4.0
#define OPENEEW_FIRMWARE_VERSION    "1.4.0"
Will fix via another commit.


Zookeeper check breaks on Digital Ocean

Digital ocean aliases the hostname to <IP_ADDRESS> and ::1:. This causes the zookeeper wait_for_listen.sh to break, as docker doesn't listen on localhost:
<IP_ADDRESS> mi-control-02 mi-control-02
<IP_ADDRESS> localhost.localdomain localhost
<IP_ADDRESS> localhost4.localdomain4 localhost4

# The following lines are desirable for IPv6 capable hosts
::1 mi-control-02 mi-control-02
::1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

Fixed with #497


hamburger menu not working in mobile view

on the current site, the hamburger menu does not expand to give all the options.

Hi @divyansh14kr, thank you for showing your interest in Rentalog. This issue is already resolved with this Pull request #38.


feat(?): Adds variables for padding of large and small callouts

Hello.  This is a rather minor PR.
I'm decently new to foundation, but going through things it surprised me that I couldn't change the padding of a small or large callout across my entire theme.  It was pretty simple for me to add a class to my theme to create a callout with the padding I desired, but I thought this capability might be generally appreciated.

Great first PR :+1:


Complete the build/mapping in a few seconds

First off, thanks for taking the time to contribute!
Please Complete the Following

[x] I read CONTRIBUTING.md
[x] I used tabs to indent
[x] I have tested my change

Notes
Mapping process execution on my laptop: 4.5 minutes -> 3.5 seconds.
Pipeline:

Go compiler builds build/mapping.go into binary build/mapping with
DuckDB embedded.
build/mapping creates in-memory DuckDB database.
DuckDB creates skus table based on input skus file.
DuckDB reads mapping file which is stored in variable.
DuckDB loads skus file into skus table.
build/mapping performs update of skus table using varible with
mapping.
DuckDB dumps skus table back to skus file.

skus.pl was modified to fix encoding issues based on the StackOverflow
question: https://stackoverflow.com/a/30551086/2108548.

Thanks for the pull. Can you please use SQLite instead of DuckDB? SQLite can also store in memory and is already used in pricing.pl https://github.com/Cyclenerd/google-cloud-pricing-cost-calculator/blob/master/build/pricing.pl#L126

I know that SQLite can also work with in-memory databases (actually, it's the other way around: DuckDB learned on SQLite success). I used DuckDB because it supports direct CSV access via SQL (which is not true for SQLite). I can replace it with SQLite if you wish. Are you okay with the rest of the changes (like rewriting it to Go)?

Yes, I think your optimization is great. Thank you very much. If you implement it with SQLite I would appreciate it very much.

I wanted to avoid manual CSV reading (and defining a Go struct with 28 fields), so I implemented it with SQLite using https://github.com/ncruces/go-sqlite3 which includes an official CSV extension (not built into SQLite). Unfortunately, the official extension doesn't support CSV files with separators different from ,, so for testing, I changed the separator to , using LibreOffice Calc. Since pricing.pl also uses SQLite, I omitted conversion back to CSV in mapping. mapping executes significantly slower than with DuckDB, but still quite fast: less than 10 seconds on my laptop. pricing.pl is more compact now (no need to convert CSV to SQLite) and executes about 10 times faster mostly because I added missing index, but avoiding CSV helped as well. I expect CI build execution time to drop from 5 min 20 sec below 2 minutes.
I propose to avoid CSV for storing SKUs at all (generate SQLite DB in skus.pl) and replace the separator in mapping.csv from ; to ,. How does this sound to you?

That sounds wonderful. The CSVs should also be more of a temporary solution. But as always... Works and therefore not modified. You are welcome to rebuild everything.

I am closing this PR in favor of #120.


Optional crate unavailable

Testcase here
Builds with cargo, not with crate2nix

Thank you very much for reporting this!
Usually build errors are due to differences in the rustc command line between crate2nix and cargo. The things that look like hashes don't matter but feature selection etc. does. If you can isolate that difference, it would help me a lot.

cargo
rustc --crate-name flate2 /home/tilpner/.cargo/registry/src/github.com-1ecc6299db9ec823/flate2-1.0.11/src/lib.rs --color always --crate-type lib --emit=dep-info,metadata,link -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="miniz-sys"' --cfg 'feature="miniz_oxide"' --cfg 'feature="rust_backend"' -C metadata=f617164663f537ba -C extra-filename=-f617164663f537ba --out-dir /home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps -L dependency=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps --extern crc32fast=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps/libcrc32fast-9cbc2ae3f9c5c1f7.rlib --extern libc=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps/liblibc-2a24069ae9cc47fd.rlib --extern miniz_sys=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps/libminiz_sys-12111c0588ad7829.rlib --extern miniz_oxide=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/deps/libminiz_oxide-7a103db29777ac3d.rlib --cap-lints allow -L native=/home/tilpner/dev/crate2nix-testcases/flate-test/target/debug/build/miniz-sys-68053c9fa6362326/out

crate2nix
rustc --crate-name flate2 src/lib.rs --crate-type lib -C opt-level=3 -C codegen-units=1 --edition 2015 -C metadata=e6022b985d -C extra-filename=-e6022b985d --cfg feature="default" --cfg feature="miniz-sys" --cfg feature="miniz_oxide" --cfg feature="rust_backend" --out-dir target/lib --emit=dep-info,link -L dependency=target/deps --extern crc32fast=/nix/store/aanv44l347baav3kqdz7mn7snwb8pr4f-rust_crc32fast-1.2.0/lib/libcrc32fast-093f96a061.rlib --extern libc=/nix/store/iiz26qj3ygqpfba4h73lh1z8nm3j8g3k-rust_libc-0.2.62/lib/liblibc-68f9c48770.rlib --extern miniz_sys=/nix/store/7kym1zycmv38sm2gs1d8p6q6qvh76qcb-rust_miniz-sys-0.1.12/lib/libminiz_sys-f656099c58.rlib --cap-lints allow -L native=/nix/store/7kym1zycmv38sm2gs1d8p6q6qvh76qcb-rust_miniz-sys-0.1.12/lib/miniz-sys.out -l static=miniz --color always

cargo (interesting)
rustc --emit=dep-info,metadata,link --out-dir /target/debug/deps -L dependency=target/debug/deps --extern crc32fast=target/debug/deps/libcrc32fast-9cbc2ae3f9c5c1f7.rlib --extern libc=liblibc-2a24069ae9cc47fd.rlib --extern miniz_sys=libminiz_sys-12111c0588ad7829.rlib --extern miniz_oxide=libminiz_oxide-7a103db29777ac3d.rlib -L native=target/debug/build/miniz-sys-68053c9fa6362326/out

crate2nix (interesting)
rustc --edition 2015 --out-dir target/lib --emit=dep-info,link -L dependency=target/deps --extern crc32fast=libcrc32fast-093f96a061.rlib --extern libc=liblibc-68f9c48770.rlib --extern miniz_sys=libminiz_sys-f656099c58.rlib -L native=miniz-sys.out -l static=miniz

cargo passes --extern miniz_oxide=..., crate2nix doesn't.

It seems that I ran same problem. I think the reason is that cargo metadata only includes crates that are reachable through the default feature configurations. According to the cargo-metadata documentation:
When no feature options are given, the default feature is activated for every selected package.
In my case I could solve the problem by having crate2nix generate metadata for all features, with this simple patch:
diff --git a/src/lib.rs b/src/lib.rs
index 5104267..f7eb976 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -10,6 +10,7 @@ use std::env;
 use std::path::PathBuf;

 use cargo_metadata::Metadata;
+use cargo_metadata::CargoOpt;
 use cargo_metadata::PackageId;
 use failure::format_err;
 use failure::Error;
@@ -121,6 +122,7 @@ impl BuildInfo {
 /// Call `cargo metadata` and return result.
 fn cargo_metadata(config: &GenerateConfig) -> Result<Metadata, Error> {
     let mut cmd = cargo_metadata::MetadataCommand::new();
+    cmd.features(CargoOpt::AllFeatures);
     cmd.manifest_path(&config.cargo_toml);
     cmd.exec().map_err(|e| {
         format_err!(

I could submit a proper PR, but maybe you (@tilpner) could test if this fixes the problem in your case as well?

This is a different issue than the one that I was encountering. The issue here is that in the output of cargo metadata the flate2 crate contains the miniz_oxide dependency twice:
        {
          "name": "miniz_oxide",
          "source": "registry+https://github.com/rust-lang/crates.io-index",
          "req": "^0.3.2",
          "kind": null,
          "rename": null,
          "optional": true,
          "uses_default_features": true,
          "features": [],
          "target": null,
          "registry": null
        },
[...]
        {
          "name": "miniz_oxide",
          "source": "registry+https://github.com/rust-lang/crates.io-index",
          "req": "^0.3.2",
          "kind": null,
          "rename": null,
          "optional": false,
          "uses_default_features": true,
          "features": [],
          "target": "cfg(all(target_arch = \"wasm32\", not(target_os = \"emscripten\")))",
          "registry": null
        }

So, the logic seems to be: miniz_oxide is optional on all platforms except wasm32 - emscripten, where it is a required dependency. Relevant lines from flate2's Cargo.toml:
[dependencies]
[...]
miniz_oxide = { version = "0.3.2", optional = true}

[target.'cfg(all(target_arch = "wasm32", not(target_os = "emscripten")))'.dependencies]
miniz_oxide = "0.3.2"

The output generated by crate2nix only uses the second variant:
        dependencies = {
          "crc32fast" = "crc32fast 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)"
;
          "libc" = "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)";
          "miniz_oxide" = {
            packageId = "miniz_oxide 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)";
            target = ((target."arch" == "wasm32") && (!(target."os" == "emscripten")));
          };
        };

So, miniz_oxide is never added as a dependency, although it should when flate2's rust_backend option is set.

I have the same problem (and created a duplicate issue, shame on me).
Here's my testcase (almost the same as your's) and my build output:
Update: On the carnix branch in the testcase, I used carnix generate-nix --standalone --src . to generate the build files and built using nix-build Cargo.nix --attr nix_test and it works fine.
Build output

nix-build Cargo.nix --attr rootCrate.build | tee ~/nlog
these derivations will be built:
  /nix/store/8h7pwmcjs609qndm5p6hjjj6aa3pdp2w-rust_flate2-1.0.12.drv
  /nix/store/867xl42ma2hzzkaiaqdn2153y2akw07l-rust_nix-test-0.1.0.drv
building '/nix/store/8h7pwmcjs609qndm5p6hjjj6aa3pdp2w-rust_flate2-1.0.12.drv'...
unpacking sources
unpacking source archive /nix/store/wmnaidz3za0642pianadw8w3y68cxxp0-flate2-1.0.12.tar.gz
source root is flate2-1.0.12.tar.gz
patching sources
configuring
building
Building src/lib.rs (flate2)
Running rustc --crate-name flate2 src/lib.rs --crate-type lib -C opt-level=3 -C codegen-units=2 --edition 2018 -C metadata=a55c485f99 -C extra-filename=-a55c485f99 --cfg
feature="default" --cfg feature="miniz_oxide" --cfg feature="rust_backend" --out-dir target/lib --emit=dep-info,link -L dependency=target/deps --extern cfg_if=/nix/store/
c3lddq79d9cwbl92via76pp3zs2mih4l-rust_cfg-if-0.1.10/lib/libcfg_if-271c7a6275.rlib --extern crc32fast=/nix/store/bjdk5m7gwx8wz72ccz3c38pp2pzrhzwr-rust_crc32fast-1.2.0/lib/
libcrc32fast-0e271bcda6.rlib --extern libc=/nix/store/5k4amvz95vz4b9v3bs7kwzs06yhj0hw6-rust_libc-0.2.65/lib/liblibc-325f2598fe.rlib --cap-lints allow --color always
error[E0432]: unresolved import `miniz_oxide`
 --> src/ffi/rust.rs:8:9
  |
8 | pub use miniz_oxide::*;
  |         ^^^^^^^^^^^ use of undeclared type or module `miniz_oxide`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
  --> src/ffi/rust.rs:10:32
   |
10 | pub const MZ_NO_FLUSH: isize = MZFlush::None as isize;
   |                                ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
  --> src/ffi/rust.rs:11:37
   |
11 | pub const MZ_PARTIAL_FLUSH: isize = MZFlush::Partial as isize;
   |                                     ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
  --> src/ffi/rust.rs:12:34
   |
13 | pub const MZ_FULL_FLUSH: isize = MZFlush::Full as isize;
   |                                  ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
  --> src/ffi/rust.rs:14:30
   |
14 | pub const MZ_FINISH: isize = MZFlush::Finish as isize;
   |                              ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `DataFormat`
  --> src/ffi/rust.rs:21:9
   |
21 |         DataFormat::Zlib
   |         ^^^^^^^^^^ use of undeclared type or module `DataFormat`

error[E0433]: failed to resolve: use of undeclared type or module `DataFormat`
  --> src/ffi/rust.rs:23:9
   |
23 |         DataFormat::Raw
   |         ^^^^^^^^^^ use of undeclared type or module `DataFormat`

error[E0433]: failed to resolve: use of undeclared type or module `InflateState`
  --> src/ffi/rust.rs:53:20
   |
53 |             inner: InflateState::new_boxed(format),
   |                    ^^^^^^^^^^^^ use of undeclared type or module `InflateState`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
  --> src/ffi/rust.rs:65:21
   |
65 |         let flush = MZFlush::new(flush as i32).unwrap();
   |                     ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `inflate`
  --> src/ffi/rust.rs:67:19
   |
67 |         let res = inflate::stream::inflate(&mut self.inner, input, output, flush);
   |                   ^^^^^^^ use of undeclared type or module `inflate`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
  --> src/ffi/rust.rs:73:17
   |
73 |                 MZStatus::Ok => Ok(Status::Ok),
   |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
  --> src/ffi/rust.rs:74:17
   |
74 |                 MZStatus::StreamEnd => Ok(Status::StreamEnd),
   |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
  --> src/ffi/rust.rs:75:17
   |
75 |                 MZStatus::NeedDict => {
   |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZError`
  --> src/ffi/rust.rs:80:17
   |
80 |                 MZError::Buf => Ok(Status::BufError),
   |                 ^^^^^^^ use of undeclared type or module `MZError`

error[E0433]: failed to resolve: use of undeclared type or module `MZFlush`
   --> src/ffi/rust.rs:148:21
    |
148 |         let flush = MZFlush::new(flush as i32).unwrap();
    |                     ^^^^^^^ use of undeclared type or module `MZFlush`

error[E0433]: failed to resolve: use of undeclared type or module `deflate`
   --> src/ffi/rust.rs:149:19
    |
149 |         let res = deflate::stream::deflate(&mut self.inner, input, output, flush);

    |                   ^^^^^^^ use of undeclared type or module `deflate`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
   --> src/ffi/rust.rs:155:17
    |
155 |                 MZStatus::Ok => Ok(Status::Ok),
    |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
   --> src/ffi/rust.rs:156:17
    |
156 |                 MZStatus::StreamEnd => Ok(Status::StreamEnd),
    |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZStatus`
   --> src/ffi/rust.rs:157:17
    |
157 |                 MZStatus::NeedDict => Err(CompressError(())),
    |                 ^^^^^^^^ use of undeclared type or module `MZStatus`

error[E0433]: failed to resolve: use of undeclared type or module `MZError`
   --> src/ffi/rust.rs:160:17
    |
160 |                 MZError::Buf => Ok(Status::BufError),
    |                 ^^^^^^^ use of undeclared type or module `MZError`

error[E0412]: cannot find type `DataFormat` in this scope
  --> src/ffi/rust.rs:19:43
   |
19 | fn format_from_bool(zlib_header: bool) -> DataFormat {
   |                                           ^^^^^^^^^^ not found in this scope

error[E0412]: cannot find type `InflateState` in this scope
  --> src/ffi/rust.rs:28:16
   |
28 |     inner: Box<InflateState>,
   |                ^^^^^^^^^^^^ not found in this scope

error[E0412]: cannot find type `CompressorOxide` in this scope
   --> src/ffi/rust.rs:106:16
    |
106 |     inner: Box<CompressorOxide>,
    |                ^^^^^^^^^^^^^^^ not found in this scope

error[E0412]: cannot find type `CompressorOxide` in this scope
   --> src/ffi/rust.rs:131:28
    |
131 |         let mut inner: Box<CompressorOxide> = Box::default();
    |                            ^^^^^^^^^^^^^^^ not found in this scope

error[E0425]: cannot find value `MZ_DEFAULT_WINDOW_BITS` in module `ffi`
   --> src/mem.rs:191:59
    |
191 |             inner: Deflate::make(level, zlib_header, ffi::MZ_DEFAULT_WINDOW_BITS as u8),
    |                                                           ^^^^^^^^^^^^^^^^^^^^^^ not found in `ffi`

error[E0425]: cannot find value `MZ_DEFAULT_WINDOW_BITS` in module `ffi`
   --> src/mem.rs:337:52
    |
337 |             inner: Inflate::make(zlib_header, ffi::MZ_DEFAULT_WINDOW_BITS as u8),
    |                                                    ^^^^^^^^^^^^^^^^^^^^^^ not found in `ffi`

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:50:12
   |
50 |     None = ffi::MZ_NO_FLUSH as isize,
   |            ^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:59:12
   |
59 |     Sync = ffi::MZ_SYNC_FLUSH as isize,
   |            ^^^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:69:15
   |
69 |     Partial = ffi::MZ_PARTIAL_FLUSH as isize,
   |               ^^^^^^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:76:12
   |
76 |     Full = ffi::MZ_FULL_FLUSH as isize,
   |            ^^^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:82:14
   |
82 |     Finish = ffi::MZ_FINISH as isize,
   |              ^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
  --> src/mem.rs:95:12
   |
95 |     None = ffi::MZ_NO_FLUSH as isize,
   |            ^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
   --> src/mem.rs:104:12
    |
104 |     Sync = ffi::MZ_SYNC_FLUSH as isize,
    |            ^^^^^^^^^^^^^^^^^^ referenced constant has errors

error[E0080]: evaluation of constant value failed
   --> src/mem.rs:110:14
    |
110 |     Finish = ffi::MZ_FINISH as isize,
    |              ^^^^^^^^^^^^^^ referenced constant has errors

error: aborting due to 35 previous errors

Some errors have detailed explanations: E0080, E0412, E0425, E0432, E0433.
For more information about an error, try `rustc --explain E0080`.
builder for '/nix/store/8h7pwmcjs609qndm5p6hjjj6aa3pdp2w-rust_flate2-1.0.12.drv' failed with exit code 1
cannot build derivation '/nix/store/867xl42ma2hzzkaiaqdn2153y2akw07l-rust_nix-test-0.1.0.drv': 1 dependencies couldn't be built
error: build of '/nix/store/867xl42ma2hzzkaiaqdn2153y2akw07l-rust_nix-test-0.1.0.drv' failed

This should now work on master...

Are there plans to make a new release containing these changes or should we just use the potentially unstable master branch?

I plan to release very soon from Master. So you can do both.
Valentin Brandl<EMAIL_ADDRESS>schrieb am Fr., 14. Feb. 2020,
12:54:

Are there plans to make a new release containing these changes or should
we just use the potentially unstable master branch?
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/kolloch/crate2nix/issues/18?email_source=notifications&email_token=AACS3GVFXUIPTOI2U3VA5FTRC2A6HA5CNFSM4IPMXW22YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELYZHXQ#issuecomment-586257374,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACS3GSAVC3U5MRARJ2FWRTRC2A6HANCNFSM4IPMXW2Q
.


Allow user to define clientId in runtimeConfig directly

I wanted to use environment variables in runtime config & overwrite.
Following the documentation i used defu and now we're allowed to define the clientId in runtimeConfig without having a blocking error.

@kasvith hey 👋 do you have some time to check this pr ?

Hey @tanukijs LGTM i will checkout this locally and merge it

@tanukijs can you fix CI issues?

@kasvith Sorry i didn't see it earlier, done !

thanks, good work


455 new provider

Issue
Added markdown and images for new provider
Description
Testing instructions
Screenshots (optional)

@mriios can be merged whenever ready!


Fix the behaviour when the data precision is larger than the specified precision

If the specified precision is smaller than the data precision in RowDataDebeziumDeserializeSchema, the DecimalData#fromBigDecimal will return null. I think it's better if we just lose the precision rather than lose the whole data.

Closing this issue because it was created before version 2.3.0 (2022-11-10). Please try the latest version of Flink CDC to see if the issue has been resolved. If the issue is still valid, kindly report it on Apache Jira under project Flink with component tag Flink CDC. Thank you!


Cannot retrieve video id/URL of live video thru liveStreams or liveBroadcast

When a video is currently livestreaming, you can not get the video id  that goes on end of url https://www.youtube.com/watch?v=video-id
When using the Google_Service_YouTube liveBroadcast or liveStreams there is no way to get the video id of a currently playing livestream.
There should be some way to get this information, even when the livestream is UNLISTED or PRIVATE.
The following method works for PUBLIC livestreams, but not for UNLISTED or PRIVATE livestreams:
https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=MY_CHANNEL_ID&type=video&eventType=live&key=MY_API_KEY

Thank you for filing this issue. It looks like this is actually a feature request for the YouTube Data API.
If you believe that part of this issue still needs to be addressed in this client library, then feel free to re-open this issue with more information.

Posted issue here:
https://issuetracker.google.com/issues/69732600


Persistence doesn't work on 0.0.39

I expect data to be persisted immediately upon writing but it doesn't seem to work. (Maybe I am using the API wrong, or the expected behavior around persistence has changed?)
In my todomvc app, I always create a database with the same name on boot:
const DATABASE_ID = '__riffle'
...
SKDB.create(DATABASE_ID)

However, no data is loaded when I reload the app. There is only one page of data in IndexedDB, it seems:

runnable repro
Here's some code that creates a DB w/ the same name twice:
<EMAIL_ADDRESS>And you can see that code running and look at the console log output here:
https://skdb-bug-repro-2.geoffreylitt.repl.co/

Never mind, I wasn't calling skdb.save() and didn't know that was now explicit. Closing, sorry.


chore: migrate renovate config

:tada: This PR is included in version 1.3.5 :tada:
The release is available on:

v1.3.5
GitHub release

Your semantic-release bot :package::rocket:


Add FunctorK for finally tagless (WIP)

This adds mainecoon's FunctorK and generates instances for @tagless traits.
FunctorK can be used to execute finally tagless programs in a stack safe way with a F ~> Free[F, ?]. I am not sure where to put this implicit, we currently don't really have something in freestyle-tagless except the annotation and the macro implementation.

Codecov Report

Merging #310 into master will decrease coverage by 0.93%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #310      +/-   ##
==========================================
- Coverage   83.25%   82.32%   -0.94%
==========================================
  Files          24       24
  Lines         215      215
  Branches        2        2
==========================================
- Hits          179      177       -2
- Misses         36       38       +2

I added a tagless package and package object.


feat: Users and Staff page

:)
WIP

MVP things to add, based off of page requirements:

[ ] /users/add, accessible from "Add user" button

[ ] Allow setting all user fields except passwords, obviously
[ ] Eventually this should send a password reset email to the new user's email address, but that's for a later PR

[ ] /users/user, accessible using "Table.editLink" (may want to make that take a function instead of a string? editLink: (rowJSON) -> string accepts the clicked-on row's data and returns the route to navigate to)

[ ] View all user info except passwords, obviously
[ ] Link to the user's questionnaire, if it exists (will do in future PR)
[ ] Edit all user info except passwords, obviously if this user is a lower level than the signed-in user (will do in future PR)
[ ] Button to reset password (can be a dummy button for now)

Thanks for the guide! Codin' it up 👩💻


Please make TransactionInfo.Card accessible

When requesting SumUpAPI.Response.TX_INFO, a lot of transaction information is given back.
What I'd like to achieve now is that I can print the last four digits of the used card and the card type on a receipt. The class TransactionInfo has a member called "getCard()" - however, since the class TransactionInfo.Card is private, the returned object cannot be used and I can't get the information which I'd like to print.

Hello!
Thank you for your report! There is indeed a little mistake we need to fix. Nevertheless, please note that the returned transaction data is not sufficient for creating compliant printable receipts. Please use the receipt functions provided by the SDK (Send receipt via mail or text message) for the time being. Soon, we will make a dedicated API for receipts available where appropriate data will be supplied for receipt generation.
Best regards

fixed since release 2.0.0


Update collation-functions-tertiary-weights-transact-sql.md

Text revisions to tighten and optimize the reading flow of the material.

@fbsolo : Thanks for your contribution! The author, @edmacauley, has been notified to review your proposed change.

Thanks @fbsolo, looks good to me.  #sign-off


DLSSTweaks not working with Nobody Wants to Die (Unreal Engine 5)

Hi everyone,
I'm trying to use DLSSTweaks with Nobody Wants to Die, but I'm not having any success. The game uses Unreal Engine 5.
For reference, I've placed the nvngx.dll and all other required files in the game's "Binaries/Win64" folder.
Has anyone else encountered this issue? Any advice on how to get DLSSTweaks working with this game would be greatly appreciated.
Thanks!

Place DLSSTweaks as winmm.dll in Detnoir\Binaries\Win64 and you're golden.


Remove Tiki Wiki from Azure Stack docs

Signed-off-by: David Gomez<EMAIL_ADDRESS>Remove Tiki Wiki CMS Groupware since this product has been deprecated by Bitnami.

Learn Build status updates of commit 9635c6c:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azure-stack/operator/azure-stack-marketplace-azure-items.md
:white_check_mark:Succeeded

azure-stack/operator/media/azure-stack-marketplace-azure-items/tikiwikicmsgroupware.png
:white_check_mark:Succeeded
n/a (file deleted or renamed)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

@dgomezleon Thank you for the contribution! We will get this merged ASAP. #sign-off


legends, part 1

starts #403
major WIP

got some very basic stuff working, can add simple LineGraphics to the legend

I should determine a way to make a sorting method for LegendItems in space (based on the size of each) and then organize into an optimal column, row or grid of items. Get the bbox for all LegendItems and set the Legend mesh to the bbox.

If legend is placed in the main plot area scale the text size and spacing based on current scene bbox.

I see here you provided images exemplifying use, I think we should add a legends.ipynb.
@kushalkolar thoughts?

Interesting functionality, if I don't specify a dock to put the legend in, it places it in the middle of the plot. Should we have a default dock to use ("top" or "right") if someone just passes the plot?

I see you can pass a Plot, Dock, or Subplot. My only worry is that when I just passed the same plot that my data is in it put the legend over the graphic. Guess maybe it is up to the user to know that you can put legend in a plot or subplot by itself, or you can put it in a dock.

Is there a plan to have something like plot.add_legend(), that would take a plot_area and auto generate a legend based on existing graphics in the plot?

We can think about this later once we have all the legend functionality we want.

Interesting functionality, if I don't specify a dock to put the legend in, it places it in the middle of the plot. Should we have a default dock to use ("top" or "right") if someone just passes the plot?

Nope, it can make sense to put the legend in the main plot area too, the user can move them out of the way of existing graphics if required.

Also, if I don't change the size of the dock before adding the legend, it doesn't appear? Should we automatically change the size of the dock area that the legend is being added to?

Done

Legend location: it appears like the legend is not centered in the middle of the plot.

We can fix this later XD

I see here you provided images exemplifying use, I think we should add a legends.ipynb.

We can do this after implementing all legend functionality that we want, basically when we fully resolve #403

it is up to the user to know that you can put legend in a plot or subplot by itself, or you can put it in a dock.

Yup!

Is there a plan to have something like plot.add_legend(),

Now after the recent References refactor I realize this is probably the best way to do it, keep the API uniform. Can properly look into it after or during axes.


deduplicates dojo history (by skipping repeat entries)

?=(^ old.hit) is in there to support bootstrap, where history is presumably ~

Confirmed that this works for bootstrapping a new pier, and that it doesn't without the ?=(^ ... ;)

Also aligns a margin comment (but ignores the copious trailing whitespace ...)

Empty lines are currently added to the history; is that by design, or would it be fine to filter those as well?

It would be totally fine to filter those!
On Tue, Jul 5, 2016 at 9:39 AM, Joe Bryan<EMAIL_ADDRESS>wrote:

Empty lines are currently added to the history; is that by design, or
would it be fine to filter those as well?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/urbit/arvo/pull/188#issuecomment-230532630, or mute
the thread
https://github.com/notifications/unsubscribe/AALyAaGQAG1uT42K6SCQttz3IAXmU2wdks5qSoixgaJpZM4JB1UP
.

done


Link in the repository description doesn't work

It needs to be changed with "http://www.physical-web.org"

It's actually a valid URL. I just tried the link w/ multiple browsers and it worked fine. Is it failing for you?

Yes it's failing somehow. Here is the video: https://www.youtube.com/watch?v=_-LsGpU5GRA&feature=youtu.be

Checked with Safari and fails there too.
Checked with my iPad on the same Wi-Fi and it failed too.
Checked with my iPhone with cellular network and it failed too.

When I try to ping "physical-web.org" it outputs like the below:
Request timeout for icmp_seq 0
36 bytes from any-in-2015.1e100.net (<IP_ADDRESS>): Destination Port Unreachable
Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      Dst
 4  5  00 5400 2bf4   0 0000  3e  01 9578 <IP_ADDRESS>  <IP_ADDRESS>

I'm in Turkey for a couple of weeks and I think there is a nationwide issue with the <IP_ADDRESS> IP address. As "www.physical-web.org" goes to another IP address, it works. :no_mouth:

That's super weird.  Do you have an estimate on how many people are actually effected?  If this is just a temporary issue, I'd rather just leave it as is.

We've tried this from a range of computers and it works just fine. It certainly looks like your router (or something similar) is acting up. Closing for now but if you have any more information on this, please let us know.

I researched and found that Government of Turkey has blocked that IP with some other IP's because a website was streaming a live soccer match illegally using Google Services. So, it's a nationwide problem in Turkey.


[minor] remove import scala.collection.Set in TaskSchedulerImpl

What changes were proposed in this pull request?
I was playing with the scheduler and found this weird thing. In TaskSchedulerImpl we import scala.collection.Set without any reason. This is bad in practice, as it silently changes the actual class when we simply type Set, which by default should point to the immutable set.
This change only affects one method: getExecutorsAliveOnHost. I checked all the caller side and none of them need a general Set type.
How was this patch tested?
N/A

cc @jiangxb1987 @gatorsmile

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9379/
Test PASSed.

Merged build finished. Test PASSed.

Test build #104029 has started for PR 24231 at commit a1c43d9.

cc @squito

Test build #104029 has finished for PR 24231 at commit a1c43d9.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104029/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9383/
Test PASSed.

Test build #104034 has started for PR 24231 at commit d8d431f.

Test build #104034 has finished for PR 24231 at commit d8d431f.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104034/
Test FAILed.

retest this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/9389/
Test PASSed.

Test build #104041 has started for PR 24231 at commit d8d431f.

Test build #104041 has finished for PR 24231 at commit d8d431f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/104041/
Test PASSed.

Merged to master.


make: *** [build] Error 1 No matching distribution found for nvidia-nvjitlink-cu12==12.4.99

ERROR: No matching distribution found for nvidia-nvjitlink-cu12==12.4.99
[pipenv.exceptions.InstallError]: ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
[pipenv.exceptions.InstallError]: ERROR: Could not find a version that satisfies the requirement nvidia-nvjitlink-cu12==12.4.99 (from versions: 0.0.1.dev5)
[pipenv.exceptions.InstallError]: ERROR: No matching distribution found for nvidia-nvjitlink-cu12==12.4.99
ERROR: Couldn't install package: {}
Package installation failed...
Make build fails on MacOS

Got the same issue. Deleting Pipfile.lock and reinstalling with make build I was able to install dependencies

Great, thanks that worked ! :)

Great thank you, it worked!


Are the model weights open-sourced?

Great work on the Unlimiformer! I was wondering if the pre-trained model weights are open-sourced yet?

Thanks for your interest in our work!
I've just uploaded model weights to HuggingFace for most models and added a section to the README linking to them. I'll add further models and links to the datasets that we re-scraped as we continue releasing content!


Editor: drag n' drop (movable) tabs

From<EMAIL_ADDRESS>on 2011-02-27T06:59:54Z
We cant move tabs or we cant change their index. If we can, it would be nice.
Best regards.
Original issue: http://code.google.com/p/spyderlib/issues/detail?id=564

From pierre.raybaut on 2011-02-27T06:43:15Z
Because of the way the editor is designed, this is not a quick change (like simply make the editor plugin inherit from the same TabWidget class as the console plugin does).
See this other issue for more details, even if the mentioned combo box has been replaced by a button menu on the top-left corner of the widget since then: https://code.google.com/p/spyderlib/issues/detail?id=198&can=1&q=editor tabs I may not be completely opposed to implement this feature like I was for issue #198 .
Labels: -Type-Defect -Priority-Medium Type-Enhancement Priority-Low

From pierre.raybaut on 2011-05-16T01:28:31Z
Labels: Cat-Editor

From<EMAIL_ADDRESS>on 2011-03-22T02:35:21Z
Hi,
me, too, I'd really like to have movable tabs in the future. Maybe, instead of redesigning the editor, this could be implemented using the File List Management? Like adding Up/Down buttons as in a layer tool box?
Thanks a lot for consideration,
Daniel

From pierre.raybaut on 2011-10-06T07:52:41Z
Daniel: actually the design limitation is deeper than that (that's not a GUI problem)
Summary: Editor: drag n' drop (movable) tabs

From pierre.raybaut on 2011-10-06T07:50:31Z
issue #782 has been merged into this issue.

From pierre.raybaut on 2011-10-18T12:57:28Z
We shall write a generic horizontal/vertical splitting tab widget (let's call it SplittableTabWidget) so that it can be used for both Editor and Console (see issue #804 ):

child widgets will be added to QTabWidget objects
any kind of child widget may be added to it
when creating a new area by splitting vertically or horizontally, a spacer widget (derived from a QTabWidget of course) will be inserted with optional buttons and/or context menu to perform an initial action (e.g. "open an interpreter" for the Console or "open a script" for the Editor)
tabs will be moveable from a QTabWidget to another
maybe using QSplitter like in current editor's implementation is the not the best idea: see this thread ( http://comments.gmane.org/gmane.comp.lib.qt.general/22146 )

From pierre.raybaut on 2012-03-11T06:21:10Z
issue #939 has been merged into this issue.

From pierre.raybaut on 2011-10-06T07:56:32Z
I think that a lot of users would be interested by this feature.
Moreover I'm tired of Editor's current design limitations/bugs. So the best is to rewrite the editor widget: https://code.google.com/p/spyderlib/source/browse/spyderlib/widgets/editor.py Redesigning the editor is not a difficult/long task, but it will require a lot of testing: debugging will take time. That's why I think we should not implement this for v2.1 but for the next release.
Status: Accepted
Owner: pierre.raybaut
Labels: Milestone-Release2.2

From pierre.raybaut on 2012-03-18T13:45:19Z
Labels: -Milestone-Release2.2 Milestone-v2.2

From pierre.raybaut on 2012-03-18T13:56:59Z
Labels: -Milestone-v2.2 MS-v2.2

From<EMAIL_ADDRESS>on 2012-11-08T09:19:38Z
What is the status of this?
I find this (and the fact that ctrl+tab & ctrl+shift+tab can't be changed to the ctrl+pageup & ctrl+pagedown behaviour) quite annoying...
Thanks.

From pierre.raybaut on 2012-03-18T14:15:49Z
Labels: -Type-Enhancement Type-Enh

From pierre.raybaut on 2012-11-08T12:22:45Z
I'm afraid that nothing has been done on this for a year now.
I'll take care of it when I can... It's not complicated but it could take some time to reimplement all the editor features: there are a lot of things to manage at this design level.
Regarding the behavior of Ctrl+Tab and Shift+Ctrl+Tab, I've reproduced the standard behavior of these shortcuts (see an Internet navigator tabs, like Chome for example): that's navigating through tabs (next/previous) and not simply going to the first tab to the right/to the left.

From pierre.raybaut on 2012-11-09T12:27:31Z
There is a lot to do indeed... I should write at least the architecture so that you may eventually, if you want to, continue and implement the rest of the features.
Regarding the behavior of the ctrl+tab and ctrl+shift+tab in Chrome (or any other internet navigator), I don't know why I was sure that they were following a history-based behavior... (maybe because I'm never using them!) they don't, as you rightfully pointed out :)

From<EMAIL_ADDRESS>on 2012-11-09T08:43:39Z
Hi Pierre,
What has to be done for the editor stuff? As I understand it, the whole editor widget has to be re-written? I guess it's a lot... What is your guess as to what it should be re-written with? Different parent class? If I want to hack on it, where should I begin?
Correct me if I'm wrong, but I though historically ctrl+tab and ctrl+shift+tab would navigate to the tab on the right or left, respectively. This was ignoring the "history" of tabs; ctrl+tab would always go to the tab on the right, even if another tab was previously selected. Then at some point people started wanting a behaviour similar to "alt+tab" where, in this case, the last window to have focus was raised. Pressing "alt+tab" twice would go to the next window and back to the first, without cycling through all others. I have found that feature interesting and tried it when KDevelop added it. I didn't like it though as I had trouble remembering the history of the tabs; what I see is the tabs opened in a specific order. If a tab I need to access is two on the right, I know right away that I have to press ctrl+tab twice and I'll be there. Using a history based behaviour, this breaks. ctrl+pagedown has the behaviour I need/want, but this requires having two hands on the keyboard, while ctrl+tab & ctrl+shift+tab can be done with only one. Additionally, on my netbook the pagedown is hidden behind a Fn key...
KDevelop can be used with both the history-based behaviour and the traditional one. I was surprised that it was not possible at all in spyder; ctrl+tab and ctrl+pageup are not interchangeable. I guess the simplest solution would be to expose both of these behaviour in the preferences so user can switch the two.
I'm not sure I understood your last paragraph. On every browser I've used, ctrl+tab will go to the tab on the right, ctrl+shift+tab on the left. On both linux and windows, with both firefox and chrome/chromium. I don't know of any browser that implements ctrl+tab as cycling through history and not "visual" ordering... ctrl+pagedown is doing the visual order in browsers too; it's consistent with spyder.

From pierre.raybaut on 2013-03-23T03:47:58Z
issue #1330 has been merged into this issue.

From<EMAIL_ADDRESS>on 2013-04-06T04:15:28Z
Just wanted to add that I would also really really appreciate this feature!

From pierre.raybaut on 2013-01-27T01:43:28Z
Labels: -MS-v2.2 MS-v2.3

From<EMAIL_ADDRESS>on 2013-07-18T09:27:11Z
Moving tabs around can become quite necessary for your workflow when you have several open. I got used to being able to move tabs around while coding with Canopy and Geany and not being able to with Spyder (which I consider the best Python IDE) is really a shame.
Hopefully we'll get this implemented soon. Best.

From pierre.raybaut on 2013-05-11T05:32:06Z
Labels: -MS-v2.3 MS-v2.4

From<EMAIL_ADDRESS>on 2013-07-18T10:37:33Z
It is possible to speed up the process by researching and documenting:

current behavior
what is required to change tabs to be movable
what will break after the change

From<EMAIL_ADDRESS>on 2014-05-15T08:43:55Z
Ok, I just found it under variable 'filenames' in .spyder.ini (didn't read carefully when I opened this file before). But after changed var filenames, I can't run Spyder. Is there any workaround for this arranging problem?

From<EMAIL_ADDRESS>on 2014-05-15T08:27:52Z
at least where is the list of editor tabs (opened files) in config file, so we can arrange manually through text editor even though we have to close and reopen spyder to apply the settings.

From ccordoba12 on 2014-11-18T15:01:11Z
issue #2013 has been merged into this issue.

Adding a +1 to this one!

another +1, for what it's worth.

@goanpeca, would you mind to take a look at this one?
Pierre mentioned that this would require to rewrite how tabs are handled in the Editor, but I think the main issue is with trying to maintain all editorstacks in sync.
By the way, this is the most popular issue after code folding :-)

@ccordoba12, sure, I already took a quick look at this some time ago... hmmm in theory yes the issue would be keeping stuff synced, but I think we can do it without heavily modifying the code as Pierre suggested.

Yes, that's my gut feeling too :-)

Ok spyder fans, I have good news :-)
it is done :smile_cat: !

Also, if you are interested, soon it will be also possible to rearrange the tabs in panes with multiple panes... (PR #2369)

@rlaverde, please look at Gonzalo's work on PR #2369 and finish it.


capacity overflow when send large Uint8List to rust(> 2gb)

Describe the bug
In flutter capacity overflow when send large Uint8List to rust(> 2gb)
Steps to reproduce
Hint: A simple way to reproduce is to clone and modify the https://github.com/fzyzcjy/flutter_rust_bridge/tree/master/frb_example/flutter_via_create example package according to your needs.

add a new function to return vec len at rust/src/api/simple.rs

pub fn test_vec(data: Vec<u8>) -> usize {
    data.len()
}

run flutter_rust_bridge_codegen generate
add test code to dart

import 'dart:typed_data';

import 'package:flutter/material.dart';
import 'package:flutter_via_create/src/rust/api/simple.dart';
import 'package:flutter_via_create/src/rust/frb_generated.dart';

Future<void> main() async {
  await RustLib.init();
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: const Text('flutter_rust_bridge quickstart')),
        body: Center(
          child: TextButton(
            onPressed: () {
              final result = greet(name: "world");
              print(result);
              testVec(data: Uint8List(1024 * 1024 * 1024 * 2)).then((value) => print(value));
            },
            child: const Text("data"),
          ),
        ),
      ),
    );
  }
}

click button , then this will get a panic.

Logs
thread '<unnamed>' panicked at library/alloc/src/raw_vec.rs:25:5:
capacity overflow
stack backtrace:
   0:        0x102c107c4 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h243268f17d714c7f
   1:        0x102c536fc - core::fmt::write::hb3cfb8a30e72d7ff
   2:        0x102c067a8 - std::io::Write::write_fmt::hfb2314975de9ecf1
   3:        0x102c12cd4 - std::panicking::default_hook::{{closure}}::h14c7718ccf39d316
   4:        0x102c128f8 - std::panicking::default_hook::hc62e60da3be2f352
   5:        0x102a071fc - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha3771cb704b88a16
   6:        0x102a0e92c - flutter_rust_bridge::misc::panic_backtrace::PanicBacktrace::setup::{{closure}}::hf7eef2f7421ac658
   7:        0x102c138f0 - std::panicking::rust_panic_with_hook::h09e8a656f11e82b2
   8:        0x102c131d8 - std::panicking::begin_panic_handler::{{closure}}::h1230eb3cc91b241c
   9:        0x102c10c50 - std::sys::backtrace::__rust_end_short_backtrace::hc3491307aceda2c2
  10:        0x102c12ec8 - _rust_begin_unwind
  11:        0x102c76534 - core::panicking::panic_fmt::ha4b80a05b9fff47a
  12:        0x102c450e4 - alloc::raw_vec::capacity_overflow::h88d6b8d70532516f
  13:        0x102c760cc - alloc::raw_vec::handle_error::h3874354ba7b66dcc
  14:        0x102a05c68 - alloc::raw_vec::RawVec<T,A>::reserve_exact::h09bb17568e2b0d00
  15:        0x102a0fd68 - alloc::vec::Vec<T,A>::reserve_exact::h025a1c8279936d8b
  16:        0x102a08d2c - flutter_rust_bridge::ffi_binding::vec_resize::h02bf0f6657da6c5a
  17:        0x102a08c64 - _frb_rust_vec_u8_resize
thread '<unnamed>' panicked at library/core/src/panicking.rs:221:5:
panic in a function that cannot unwind
stack backtrace:
   0:        0x102c107c4 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h243268f17d714c7f
   1:        0x102c536fc - core::fmt::write::hb3cfb8a30e72d7ff
   2:        0x102c067a8 - std::io::Write::write_fmt::hfb2314975de9ecf1
   3:        0x102c12cd4 - std::panicking::default_hook::{{closure}}::h14c7718ccf39d316
   4:        0x102c128f8 - std::panicking::default_hook::hc62e60da3be2f352
   5:        0x102a071fc - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha3771cb704b88a16
   6:        0x102a0e92c - flutter_rust_bridge::misc::panic_backtrace::PanicBacktrace::setup::{{closure}}::hf7eef2f7421ac658
   7:        0x102c138f0 - std::panicking::rust_panic_with_hook::h09e8a656f11e82b2
   8:        0x102c131d8 - std::panicking::begin_panic_handler::{{closure}}::h1230eb3cc91b241c
   9:        0x102c10c50 - std::sys::backtrace::__rust_end_short_backtrace::hc3491307aceda2c2
  10:        0x102c12ec8 - _rust_begin_unwind
  11:        0x102c76564 - core::panicking::panic_nounwind_fmt::h91ee161184879b56
  12:        0x102c765dc - core::panicking::panic_nounwind::heab7ebe7a6cd845c
  13:        0x102c76754 - core::panicking::panic_cannot_unwind::hedc43d82620205bf
  14:        0x102a08c58 - _frb_rust_vec_u8_resize
thread caused non-unwinding panic. aborting.

Expected behavior
No response
Generated binding code
No response
OS
MacOS 15.1 Apple chip
Version of flutter_rust_bridge_codegen
2.6.0
Flutter info
[✓] Flutter (Channel stable, 3.24.4, on macOS 15.1 24B83 darwin-arm64, locale en-CN)
    • Flutter version 3.24.4 on channel stable at /Users/littleq/Code/Work/Library/flutter_stl
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 603104015d (2 weeks ago), 2024-10-24 08:01:25 -0700
    • Engine revision db49896cf2
    • Dart version 3.5.4
    • DevTools version 2.37.3

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/littleq/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/to/macos-android-setup for more details.

[!] Xcode - develop for iOS and macOS (Xcode 16.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16A242
    ! iOS 18.0 Simulator not installed; this may be necessary for iOS and macOS development.
      To download and install the platform, open Xcode, select Xcode > Settings > Platforms,
      and click the GET button for the required platform.

      For more information, please visit:
        https://developer.apple.com/documentation/xcode/installing-additional-simulator-runtimes
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] Android Studio (version 2024.2)
    • Android Studio at /Users/littleq/Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 21.0.3+-79915917-b509.11)

[✓] IntelliJ IDEA Ultimate Edition (version 2024.2.3)
    • IntelliJ at /Users/littleq/Applications/IntelliJ IDEA Ultimate.app
    • Flutter plugin version 80.0.2
    • Dart plugin version 242.20629

[✓] IntelliJ IDEA Community Edition (version 2024.2.3)
    • IntelliJ at /Users/littleq/Applications/IntelliJ IDEA Community Edition.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.95.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension can be installed from:
      🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[✓] Connected device (3 available)
    • macOS (desktop)                 • macos                 • darwin-arm64   • macOS 15.1 24B83 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin         • macOS 15.1 24B83 darwin-arm64
    • Chrome (web)                    • chrome                • web-javascript • Google Chrome 130.0.6723.117

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 2 categories.

Version of clang++
Apple clang version 16.0.0 (clang-16<IP_ADDRESS>)
Additional context
No response

Hmm interesting. Looks like vec_resize caused that.
Firstly, could you please install LLVM (https://cjycode.com/flutter_rust_bridge/manual/ffigen-troubleshooting#llvm-needs-to-be-installed) and enable full_dep: true in config yaml? Because for your case DCO codec may be much faster than the SSE codec without full_dep enabled.
Secondly, curious why do you need to transfer 2GB data? Maybe we can discuss and see whether it is really needed (or maybe e.g. things can live on Rust side without moving to Dart sided)

Firstly, thank you for your response. I enabled the configuration and reran flutter_rust_bridge_codegen generate, but the error still persists.
thread '<unnamed>' panicked at library/alloc/src/raw_vec.rs:25:5:
capacity overflow
stack backtrace:
   0:        0x100ca529c - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h243268f17d714c7f
   1:        0x100ce81d4 - core::fmt::write::hb3cfb8a30e72d7ff
   2:        0x100c9b280 - std::io::Write::write_fmt::hfb2314975de9ecf1
   3:        0x100ca77ac - std::panicking::default_hook::{{closure}}::h14c7718ccf39d316
   4:        0x100ca73d0 - std::panicking::default_hook::hc62e60da3be2f352
   5:        0x100a9bcd4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha3771cb704b88a16
   6:        0x100aa3404 - flutter_rust_bridge::misc::panic_backtrace::PanicBacktrace::setup::{{closure}}::hf7eef2f7421ac658
   7:        0x100ca83c8 - std::panicking::rust_panic_with_hook::h09e8a656f11e82b2
   8:        0x100ca7cb0 - std::panicking::begin_panic_handler::{{closure}}::h1230eb3cc91b241c
   9:        0x100ca5728 - std::sys::backtrace::__rust_end_short_backtrace::hc3491307aceda2c2
  10:        0x100ca79a0 - _rust_begin_unwind
  11:        0x100d0b014 - core::panicking::panic_fmt::ha4b80a05b9fff47a
  12:        0x100cd9bbc - alloc::raw_vec::capacity_overflow::h88d6b8d70532516f
  13:        0x100d0abac - alloc::raw_vec::handle_error::h3874354ba7b66dcc
  14:        0x100a9ff2c - <u8 as alloc::vec::spec_from_elem::SpecFromElem>::from_elem::h2af9457ae79cd135
  15:        0x100aa4f18 - alloc::vec::from_elem::hf2fba866b1b568fd
  16:        0x100aa35f8 - flutter_rust_bridge::for_generated::pointer::new_leak_vec_ptr::h18db222fc1c5c161
  17:        0x100a8cf30 - _frbgen_flutter_via_create_cst_new_list_prim_u_8_loose
thread '<unnamed>' panicked at library/core/src/panicking.rs:221:5:
panic in a function that cannot unwind
stack backtrace:
   0:        0x100ca529c - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h243268f17d714c7f
   1:        0x100ce81d4 - core::fmt::write::hb3cfb8a30e72d7ff
   2:        0x100c9b280 - std::io::Write::write_fmt::hfb2314975de9ecf1
   3:        0x100ca77ac - std::panicking::default_hook::{{closure}}::h14c7718ccf39d316
   4:        0x100ca73d0 - std::panicking::default_hook::hc62e60da3be2f352
   5:        0x100a9bcd4 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::ha3771cb704b88a16
   6:        0x100aa3404 - flutter_rust_bridge::misc::panic_backtrace::PanicBacktrace::setup::{{closure}}::hf7eef2f7421ac658
   7:        0x100ca83c8 - std::panicking::rust_panic_with_hook::h09e8a656f11e82b2
   8:        0x100ca7cb0 - std::panicking::begin_panic_handler::{{closure}}::h1230eb3cc91b241c
   9:        0x100ca5728 - std::sys::backtrace::__rust_end_short_backtrace::hc3491307aceda2c2
  10:        0x100ca79a0 - _rust_begin_unwind
  11:        0x100d0b044 - core::panicking::panic_nounwind_fmt::h91ee161184879b56
  12:        0x100d0b0bc - core::panicking::panic_nounwind::heab7ebe7a6cd845c
  13:        0x100d0b234 - core::panicking::panic_cannot_unwind::hedc43d82620205bf
  14:        0x100a8cf24 - _frbgen_flutter_via_create_cst_new_list_prim_u_8_loose
thread caused non-unwinding panic. aborting.

Secondly, In my current situation where I need to transfer 2GB of data, I need to implement an encryption and decryption function. The content being processed is quite large. For the PC platform, I can use files for transmission, but for other platforms like the Web, it's not feasible to use files for transmission. Therefore, I'm passing a &[u8] array as the input parameter, and the return value is also the same type of array.

I see. But I am worried about:

OOM error: On phones/websites, not sure whether can allocate that huge memory on everyone's device. Minimum is 2GB on Dart and 2GB on Rust, so it is 4GB.
UI freeze: When transfering between Dart and Rust, the UI will freeze. Usually this is not noticeable since it is very fast, but for 2GB I do not know whether that will be noticeable.

I need to implement an encryption and decryption function

For this specific scenario, I personally suggest to implement some chunking mechanism. For example, chunk 2GB into many 10MB blocks, and encrypt/decrypt each of them separately.

Thank you very much for your suggestion. I should consider modifying my design to process the content in chunks.

Close since this seems to be solved. Feel free to reopen if needed!


Tyrant with TRB2 - change and reset password

Bro! probably you wont like my documentations but I hope you are going to like my code! :)

Error in the docs:
require 'reform/form/dry'

class User::ChangePassword < Tyrant::ChangePassword
  failure :raise_error!
  step :notify!

  def raise_error!(options, *)
    raise ApplicationController::NotAuthorizedError if options["result.policy.default"].failure?
  end

  def notify!(options, current_user:, **)
    Notification::User.({}, "email" => current_user.email, "type" => "change_password")
  end

end


Support pagination based on function

what if there is no link (therefore no css selector) to the next page, but i know how to get to it?
e.g. ?page=1, ?page=2
could i use something like .paginate(function(num) { return '?page=' + num; }))

Yep that's a good idea, I'll probably get around to it when I have some time, but definitely accepting PRs in the mean time

+1

+1

I've the following case

And I could not parse the next page :(

Hi guys, to follow up. This is what I have
Next
How do I paginate this? Thanks

Could anyone help me with this type of pagination?

I have tried this  .paginate('p.listingsnav @href') but doesn't work. any suggestions?
base url is https://www.bestwaywholesale.co.uk/index.php?s=0&sort=PO&cats_l2=81-791&np=4

Does anyone know the status of this one? I'm bumping into the same problem at the moment.

I know this is late, but I figured it out, just use a filter!  I was banging my head around this, and I saw another package, x-ray-scraper which also didn't work.  The filter worked perfectly.  Enjoy!

var filters = {
  trim: function (value) {
    return typeof value === 'string' ? value.trim() : value;
  },
  paginateFx: function (value) {
    //https://testUrl.com/?no-cache=Covpq01DU3r5jMRVgOSa&page=2
    // extract the page number from the url
    return typeof value === 'string' ? pageLessUrl + value.split('&page=')[1] : false;
  },
};

const x = XRay({ filters }).concurrency(10); // 10 concurrent requests

    x(url + 1, '.product', [
      {
        description: '.product-name',
        link: '.product-name a@href',
        img: '.img-responsive @src',
      },
    ])
      .paginate('.pagination .next a@href | paginateFx')
      .limit(5)


Output window only refreshes when main window is resized

I was struggling to work out why data I sent to a BTLE module I had connected to this terminal when by chance I resized the Bluetooth LE Lab window and the data appeared in the output window.
It appears it does not automatically update when data is received, only when a refresh is forced by resizing the window.

Closing this issue as the project is being archived.

Closing this issue as the project is being archived.