Validate dates in form_validation

Now in form_validation it is possible to validate dates using the valid_date method in set_rules(), this is amazing!
Using one or more parameters, the date validation will be based on the formats that the developer reports. Check out this commit Form_validation_test

@narfbg Hey dude, im very happy because its my first time here. I love codeigniter and i love your work here with the others dev. Do you like the form_validation method? Its a good idea? I'm waiting your answer 🗡

Yes, I know you're waiting and I've responded to other PRs/issues in that time - sorry about that.
This one just needs more a thorough review, including going back through the multiple times it's been proposed in different forms already (you probably should do that too) ... and rejected. I'll get back to it when I have more than just a few spare minutes.

I'm really happy! You are awesome. I'll be here all the time ready to help. My family will know this day that I helped codeigniter. See u soon :D

You're getting a bit too excited, prematurely ... I said it needs a thorough review, I didn't promise it will be accepted.
Anyway, these are the past PRs proposing a valid_date rule: #4346, #5060, #5618
The main problem has always been that validating dates isn't nearly as easy as it seems at first glance. Difference between them and yours, is that they've been too naive while you've put much more effort into covering edge cases. But it's still too ... messy.
Here are the main problems to solve for this to have a chance of getting merged:

Flip the arguments; first param is always the value to validate and you've inverted that order
Make the code (way more) easier to read/understand; one shouldn't have to look at the test cases in order to get a clue of what's going on
Make it dates-only; no hours, minutes, seconds, unix timestamps, etc ... Should probably blacklist month names and thus support only numbers. I wouldn't even bother with supporting weeks, but if you can provide good argumentation for it - maybe it's ok

That last one will involve a whitelist of format tokens, but here's a tip for after you (presumably) solve that - use check_date(), don't rely on DateTime::createFromFormat().
After that, it will almost certainly need some polishing and naturally documentation, but the main roadblock is the above.

I am very honored to see your work and Jim thank you very much for everything, you guys are incredible.
I apologize if I am giving work, but this validation has always been difficult to really work for the whole community (much discussion on this subject)

I really apologize for having placed the order of the wrong arguments, thank you for alerting me and for your patience to verify.

Once again you forgive me for not commenting on the tasks, in which case I am very ashamed

I'm not just going to leave the date, the main idea is to follow the HTML5 standards (calm, I'll explain myself, I've seen all the discussions on the subject and I'll say why mine will work).

My function will work because if the developer really wants to receive the 1995 June 28, informs in the parameter valid_date [Y M d], it does not need lists.
Or he wants to know a date and time to generate a report, he puts the default HTML5 as a parameter and a default for his region. What matters most is the date being valid and not which region the date is valid_date [Y-m-d H:i,d/m/Y H:i]. In the form can be type="date" or type="text", the developer chooses the formats that will be accepted. That's amazing will work.
The only defect of DateTime::createFromFormat is that it does not say that this example is false 2019-02-31. What it does is add up the days that return 2019-03-02. That is why our problems are solved by comparing the value that came from the form 2019-02-31 === 2019-03-02 FALSE! Stay calm with this topic or tell me what else can give trouble (nothing in this world is perfect, is it?)

Regarding the week, how are we working to have this date validation, let's make it complete? Since there is a type="week" attribute, we will not leave a developer sad because it will be the only attribute that will not have validation.

My function will work because if the developer really wants to receive the 1995 June 28, informs in the parameter valid_date[Y M d], it does not need lists.

What? This doesn't say anything.

Or he wants to know a date and time to generate a report, he puts the default HTML5 as a parameter and a default for his region. What matters most is the date being valid and not which region the date is valid_date[Y-m-d H:i,d/m/Y H:i]. In the form can be type="date" or type="text", the developer chooses the formats that will be accepted. That's amazing will work.

I don't care about HTML5, regions or form input types. I care that valid_date shoult only accept dates.

The only defect of DateTime::createFromFormat is that it does not say that this example is false 2019-02-31. What it does is add up the days that return 2019-03-02. That is why our problems are solved by comparing the value that came from the form 2019-02-31 === 2019-03-02 FALSE! Stay calm with this topic or tell me what else can give trouble (nothing in this world is perfect, is it?)

check_date() is perfect ...


Anonymous record types not working with generic reference/value type constraints

Attempting to use an anonymous record type (non-struct) with a generic type having when 'a : not struct constraint produces error FS0001: A generic construct requires that the type '{|R : int|}' have reference semantics, but it does not, i.e. it is a struct.
A struct anonymous record type with when 'a : struct constraint produces error FS0073 : internal error : tcrefOfAppTy (Failure) error FS0192 : internal error : tcrefOfAppTy
Wondering if these are expected to work -- hopefully yes so they work with serializers/ORMs that happen to use the constraints -- but if not then they will probably need better error messages.
Repro steps
type Class<'a>() = class end
type RefClass<'a when 'a : not struct>() = class end
type StructClass<'a when 'a : struct>() = class end

//
// OK
//
let cAnon = Class< {| C: int |} >()

//
// error FS0001: A generic construct requires that the type '{|R : int|}'
// have reference semantics, but it does not, i.e. it is a struct
//
let rAnon = RefClass< {| R: int |} >()

//
// error FS0073 : internal error : tcrefOfAppTy (Failure)
// error FS0192 : internal error : tcrefOfAppTy
//
let sAnon = StructClass< struct {| S: int |} >()

Related information
Visual Studio Enterprise 2019 Preview - Version 16.0.0 Preview 2.2
Visual F# Tools 10.4 for F# 4.6 - <IP_ADDRESS>
dotnet 2.2.200-preview-009799

Thanks @chadunit, yes this is definitely a bug. Doesn't look like the constraint checking was implemented here. It's not mentioned in the spec, but I'm interpreting this as an oversight because anonymous records should be effectively records without names, and this is clearly supported with record types.

This is bug; though I think it should be pretty easy to fix.

I actually can't reproduce the struct case using dev16 bits:

But the reference type constraint fails:

The struct case was probably fixed when we did this: https://github.com/Microsoft/visualfsharp/pull/6078


feature(new-caching): sqlite caching + integration into gpt3 and colbert

What the PR does:

Creates a new caching logic using sqlite
makes experiments reproducible using cached timeranges:

eg: if an example is not part of the specified time-range, it would error out instead of re-computing. This helps us to make the experiments consistent and re-producible.

integrated the logic into gpt and colbert module.

usage: dsp.settings.configure(lm=lm, rm=rm, experiment_end_timestamp=..., experiment_start_timestamp=...)  # in timestamp

Adds a testing notebook for understanding different behaviours of the cache.
adds a common logger which can be used for debugging along with custom logging level
removes joblib caching logic

cc: @lawliet19189 if it's easier for Sri to check

@arnavsinghvi11 Can we close this? I think https://github.com/stanfordnlp/dspy/pull/189/files has everything here?

ah I believe this might be the wrong PR but this branch has all the commits from here, including the slight changes I added. If all looks correct, we can close this one (72) and merge (103).

Yes close this one but don’t merge anything yet just ping me on the right one and close all the wrong ones


Suggestion for reordering sections and "git diff" exercise

IMO the time spent to explain the "git diff" exercise is disproportionate to the benefit. On the other hand last time we ran out of time with the nice interact examples which I think should come first. IMO the "git diff" part can be left out if time is short since I find it more important that people see the power of notebooks rather that everybody understands the pitfalls of JSON diffing.

there's no longer an exercise on git diff, only a section describing the challenges in using git with notebooks, and a possible solution through nbdime. It's only mentioned and not dwelled on for long.
So let's resolve this issue


Wrong text in Quickstart - Teams interop on Azure Communication Services

[Enter feedback here]
The phrase "Get started with Azure Communication Services by connecting your calling solution to Microsoft Teams using the JavaScript SDK." is present also for non JavaScript SDKs

Document details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 814e94a3-80a3-927b-b1ce-d4526435feb4
Version Independent ID: a304ea23-c2cf-5a31-5b37-74b92da342be
Content: Quickstart - Teams interop on Azure Communication Services - An Azure Communication Services quickstart
Content Source: articles/communication-services/quickstarts/voice-video-calling/get-started-teams-interop.md
Service: azure-communication-services
Sub-service: calling
GitHub Login: @chpalm
Microsoft Alias: chpalm

Hello @vernazza - Thank you for your feedback! We will review and update as appropriate.

Thanks for calling this out, we've got a PR to address it.


Integration Test Benchmarks

This change adds benchmarks for the in-process integration test cases. Here is an example execution:
BenchmarkIntegration/ensure/empty/case1-4         	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/ensure/empty/case2-4         	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/ensure/empty/case3-4         	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/ensure/override/case1-4      	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/ensure/pkg-errors/case1-4<PHONE_NUMBER>	         0.00 ns/op
BenchmarkIntegration/ensure/update/case1-4        	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/ensure/update/case2-4        	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/init/case1-4                 	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/init/case2-4                 	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/init/case3-4                 	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/init/manifest-exists-4<PHONE_NUMBER>	         0.00 ns/op
BenchmarkIntegration/init/skip-hidden-4           	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/remove/force/case1-4         	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/remove/specific/case1-4      	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/remove/specific/case2-4      	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/remove/unused/case1-4        	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/status/case1/dot-4           	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/status/case1/json-4          	       1<PHONE_NUMBER> ns/op
BenchmarkIntegration/status/case1/table-4         	       1<PHONE_NUMBER> ns/op
PASS
ok  	github.com/golang/dep/cmd/dep	36.556s

Using built-in benchmarking at this high of a level seems a bit silly, but it was simple to adapt the existing integration testing structure with the testing.TB interface. I'm happy to evolve this into something more customized if that makes sense.

I appreciate the initiative, but yeah, I'm not sure this tells us anything terribly useful. The times here are dominated by network interactions, and are biased towards the case where the repo cache isn't already populated - highly unrepresentative of the typical case.
Let's do open up an issue to discuss what areas we might be able to more meaningfully benchmark, though - @sectioneight might also be interested in that.


Add more information to episode model

It would be nice if the episode model had more information like a plot, the name of the director, writers and actors, etc. (like imbd)

Hey,
That's a pretty good idea. However since the episode schema is mostly used to support the characters schema, we hadn't thought about adding more data to it.
I think adding the plot would be a nice addition. I'm not so sure about director, actors, etc. because we would prefer not to link outside the API. You are completely welcome to collaborate with the episode's plot.
Thanks!

I'm closing this due inactivity.


[bugfix] Agg literal attach should happen after BASIC_RULES

this fixes #11862

Codecov Report

Merging #11863 (af39349) into master (0174c71) will decrease coverage by 48.58%.
Report is 43 commits behind head on master.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             master   #11863       +/-   ##
=============================================
- Coverage     62.99%   14.41%   -48.58%
+ Complexity     1140      201      -939
=============================================
  Files          2343     2367       +24
  Lines        126305   127937     +1632
  Branches      19419    19744      +325
=============================================
- Hits          79563    18440    -61123
- Misses        41071   107931    +66860
+ Partials       5671     1566     -4105

Flag
Coverage Δ

integration
?

integration1
?

integration2
?

java-11
?

java-17
?

java-20
?

java-21
14.41% <0.00%> (?)

skip-bytebuffers-false
14.41% <0.00%> (?)

temurin
14.41% <0.00%> (-48.58%)
:arrow_down:

unittests
14.41% <0.00%> (-48.58%)
:arrow_down:

unittests1
?

unittests2
14.41% <0.00%> (+<0.01%)
:arrow_up:

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

Files
Coverage Δ

.../java/org/apache/pinot/query/QueryEnvironment.java
0.00% <0.00%> (-90.60%)
:arrow_down:

... and 1571 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Need compression on the website

Can we just enable the nginx equivalent of mod_deflate?
Google page speed tool is complaining about uncompressed JS bundles.

Relevant information:

http://nginx.org/en/docs/http/ngx_http_gzip_module.html
https://www.nginx.com/resources/admin-guide/compression-and-decompression/

I don't think this was fixed by #494 (at least in the HTML case) It'd be swell if each of the RootElements were gzipped before transport. Is this possible?

Hmmm... dev tools are showing that the html response is compressed, at least for the homepage:

@patrick-mcdougle - Which page are you seeing uncompressed HTML on?

@gigabo you've got a content length header there. That means that the whole payload must have fit and the response wasn't chunked at all, but it doesn't matter because it doesn't look like there's any issue. Sorry for the false alarm.

Ooh, nice catch!
We're using nginx as a caching reverse proxy and letting it handle encoding.  Looks like it's being smart about un-chunking response bodies that fit in the window.
Here's a longer one that it leaves chunked:
https://react-server.io/docs/intro/why-react-server

Hadn't realized it was doing that.  Nice little optimization. :)

Oh, actually... maybe we should reduce the window size.
@davidalber Is that configurable with nginx?
Here's what we do at Redfin:
        if (gzipEnabled) {
                // The default value for `windowBits` is 15 (32K).  This is too
                // large for our CSS/script includes to make it through before
                // we start waiting for the body.  We _really_ want to kick off
                // secondary resource requests as early as possible, so we'll
                // decrease the window size to 8K.
                //
                // TODO: allow gzip opts to be specified via config?
                server.use(require('compression')({ windowBits: 13 }));
        }

Or, rather, what we used to do before we offloaded encoding to nginx internally.
Maybe we should look at tuning that again on redfin.com, too. 😁

If you end up needing to change anything, please tell!

@davidalber Is that configurable with nginx?
If it is, it isn't immediately obvious, but I don't yet believe that it's not configurable.


Option to add templates of applications

The CDK provides a list of Kubernetes applications (= templates) that we can use to create some pods (EAP, Ruby, Php, NodeJs, ...).

I would like to suggest that we have an option to deploy --add-templates such templates within minishift :
Here is a list of such templates :
DBs:
https://github.com/openshift/origin/tree/master/examples/db-templates
Sample apps/Quickstarts:
https://github.com/openshift/origin/tree/master/examples/quickstarts  (note, the files in this dir are drawn from upstream repos as described here: https://github.com/openshift/origin/blob/master/examples/quickstarts/README.md
Jenkins:
https://github.com/openshift/origin/tree/master/examples/jenkins
Middleware image templates:
https://github.com/jboss-openshift/application-templates
xPaas:
https://github.com/openshift/openshift-ansible/tree/master/roles/openshift_examples/files/examples/v1.3

@jimmidyson Eventually, using cluster up internally could give you this feature, but I would also be happy to have a way to bootstrap more templates in cluster creation. I know I can do that afterwards via a script, but would maybe make sense have minishift be able to bootstrap different flavours of openshift (minimal, regular, extended) depending on what would be provisioned (minimal=registry, regular=registry,router,templates and extended=registry,router,templates,metrics,logging) even also additional stuff could be awesome.

This has a quite high priority really. Minishift 1.0.0-beta.1 is now using 'oc cluster up' to bootstrap and provision OpenShift, but there is still a need for a mechanism to further customize the server.

I am closing this as a duplicate of #177 which seems to have the more relevant discussion.


issue creating the pg_dump command for postgresql

I'm gettng the following error try to create the backup for postgresql DB:
Error running:  pg_dump xxxxx --user=yyyyy --password=zzzz --clean
b'/usr/lib/postgresql/9.3/bin/pg_dump: option '--password' doesn't allow an argument\nTry "pg_dump --help" for more information.\n'
pg_dumpd does not have the option --pasword=zzzz
Thanks in advance!
P.D. psql (PostgreSQL) 9.3.10

Hello @amolinaalvarez
Thank for this issue.
What is your DBBackup version ?

Hi @ZuluPro,
Thanks a lot for you answer, I'm working on master because I need to work with Mongodb.

@amolinaalvarez Sorry for my latency,
I'll make all that quite fast, I fix it soon.

Hello @amolinaalvarez,
It should be fixed with #181
Now, your password setting is set as environmental variable PGPASSWORD.
This is a security issue in production, so I suggest you to set a .pgpass file.
I let the issue opened, do not hesitate to say me if troubles stay.

@amolinaalvarez : No news ?

@amolinaalvarez : I think this issue is now resolved.


Keyerror 6

I've been converting videos with IW3 for a while with good results, but this error just popped up. It will not go away. I've tried update, restarting PC with no joy as error still persists. Any ideas?

Run nunif-prompt.bat
Type python -m iw3.gui and press Enter
(iw3 GUI is launched)

Then, the full error message will be shown on the command prompt window.

I did as requested above, and the GUI starts. However, when I "start" the converter, the error pops up. This is when I get the keyerror. Program starts up fine. This is what is shown in the CMD window.

I found the problem. The video I was trying to convert was a .m4v which plays fine as a 2D video. It must be a compatibility issue. Thanks for your time.

This looks like a colorspace conversion issue.
You may avoid this error by specifying Colorspace=unspecified.
Could you post the mediainfo or ffprobe results for this video?
Only information about the colorspace is needed.
Color range                              : Limited
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

In pyav, 6 is not defined as a colorspace value. (6 is maybe SMPTE170M)
I will fix this case.

Thank you. I can reproduce the error on my side.
At the moment, you can avoid this error by specifying Colorspace=unspecified.

Fixed. Run update.bat and try again.

Running as advertised. Thank you for your hard work.


Add test to check if scully works in new project.

We need a test that will create a new Angular project. uses the schematic to install Scully, and then the project should be able to "run"

Steps I think this should include

create a new packaged version of the schematics.
ng new testProject with routing && css
ng g m home --route home --module app.module  to add at least 1 route
ng add package from 1
ng build && npm run scully
check if there is a static version of the home route from 3

And, most importantly, figure out how to do this in an automatic way.


nixos/lib/test-driver: reduce spam at boot hangs

Description of changes
Since 008f9f0cd419bd66e922239e2319fd2b1f347ad8
("nixos/test-driver: actually use the backdoor message to wait for backdoor"),
when boot is still computering, we can get a tons of empty strings in response to the shell.
This is not really useful to print and waste the disk space for any CI system that logs them.
We stop logging chunks whenever they are empty.

Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

@ofborg test systemd-boot.basic

Tested successfully in a lanzaboote development.

Triggering eval after it was fixed on master.
@ofborg eval


Fix issues running from pip install

pyproject.toml: lyrics_transcriber/utils/cli.py "import pkg_resources" depends on setuptools. Version spec may need to be updated, I just picked one roughly around python 3.9 era.
poetry.lock - Also missing setuptools dep
lyrics_transcriber/transcriber.py - the llm prompt paths are relative and if the user installed with pip, would only work if the user is in the site_packages directory

I don't have openai credits to fully test, but to reproduce the issue:
python3 -m venv venv
. venv/bin/activate # or activation script of choice
pip install lyrics-transcriber
lyrics-transcriber # ModuleNotFoundError: No module named 'pkg_resources'
pip install setuptools
lyrics-transcriber --artist ARTIST --title TITLE FILE # No such file or directory: 'lyrics_transcriber/llm_prompts/llm_prompt_lyrics_matching_andrew_handwritten_20231118.txt'

Ignore the previous PR that I closed. Same changes, but bad author metadata...


New 2.0.1 Version Throwing Invalid document error for 1.5 Schema

Hi Team,
When using latest 2.0.1 version throwing Invalid document error for the 1.5 Schema certificate.

Updates on this?


NestedScrollView scrolls inner view without scrolling outer view

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
Example reproduction for Android:

Start with the code from the first NestedScrollView example.
Set the physics of both the NestedScrollView and the nested CustomScrollView to BouncingScrollPhysics() (not necessary on iOS where it is the default).
Drag the finger down on the screen, holding, then flick it up. The bug does not get triggered every time, it takes some tries.

Expected results
When flicking up the inner scroll content should first scroll back to it's zero scroll position, then the outer scroll view should scroll to its maximum scroll position before the inner scroll view starts scrolling.
Actual results
The inner scroll view is scrolled without the outer scroll view getting scrolled. When I then subsequently scroll a little further down the outer scroll view gets scrolled and then the inner scroll view continues scrolling.
Code sample
Note the code sample could potentially me more minimal but I preferred to start from the example code and make the minimal changes necessary to reproduce.
Code sample
import 'package:flutter/material.dart';

/// Flutter code sample for [NestedScrollView].

void main() => runApp(const NestedScrollViewExampleApp());

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

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: NestedScrollViewExample(),
    );
  }
}

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

  @override
  Widget build(BuildContext context) {
    final List<String> tabs = <String>['Tab 1', 'Tab 2'];
    return DefaultTabController(
      length: tabs.length, // This is the number of tabs.
      child: Scaffold(
        body: NestedScrollView(
          physics: const BouncingScrollPhysics(),
          headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) {
            // These are the slivers that show up in the "outer" scroll view.
            return <Widget>[
              SliverOverlapAbsorber(
                // This widget takes the overlapping behavior of the SliverAppBar,
                // and redirects it to the SliverOverlapInjector below. If it is
                // missing, then it is possible for the nested "inner" scroll view
                // below to end up under the SliverAppBar even when the inner
                // scroll view thinks it has not been scrolled.
                // This is not necessary if the "headerSliverBuilder" only builds
                // widgets that do not overlap the next sliver.
                handle:
                    NestedScrollView.sliverOverlapAbsorberHandleFor(context),
                sliver: SliverAppBar(
                  title:
                      const Text('Books'), // This is the title in the app bar.
                  pinned: true,
                  expandedHeight: 150.0,
                  // The "forceElevated" property causes the SliverAppBar to show
                  // a shadow. The "innerBoxIsScrolled" parameter is true when the
                  // inner scroll view is scrolled beyond its "zero" point, i.e.
                  // when it appears to be scrolled below the SliverAppBar.
                  // Without this, there are cases where the shadow would appear
                  // or not appear inappropriately, because the SliverAppBar is
                  // not actually aware of the precise position of the inner
                  // scroll views.
                  forceElevated: innerBoxIsScrolled,
                  bottom: TabBar(
                    // These are the widgets to put in each tab in the tab bar.
                    tabs: tabs.map((String name) => Tab(text: name)).toList(),
                  ),
                ),
              ),
            ];
          },
          body: TabBarView(
            // These are the contents of the tab views, below the tabs.
            children: tabs.map((String name) {
              return SafeArea(
                top: false,
                bottom: false,
                child: Builder(
                  // This Builder is needed to provide a BuildContext that is
                  // "inside" the NestedScrollView, so that
                  // sliverOverlapAbsorberHandleFor() can find the
                  // NestedScrollView.
                  builder: (BuildContext context) {
                    return CustomScrollView(
                      physics: const BouncingScrollPhysics(),
                      // The "controller" and "primary" members should be left
                      // unset, so that the NestedScrollView can control this
                      // inner scroll view.
                      // If the "controller" property is set, then this scroll
                      // view will not be associated with the NestedScrollView.
                      // The PageStorageKey should be unique to this ScrollView;
                      // it allows the list to remember its scroll position when
                      // the tab view is not on the screen.
                      key: PageStorageKey<String>(name),
                      slivers: <Widget>[
                        SliverOverlapInjector(
                          // This is the flip side of the SliverOverlapAbsorber
                          // above.
                          handle:
                              NestedScrollView.sliverOverlapAbsorberHandleFor(
                                  context),
                        ),
                        SliverPadding(
                          padding: const EdgeInsets.all(8.0),
                          // In this example, the inner scroll view has
                          // fixed-height list items, hence the use of
                          // SliverFixedExtentList. However, one could use any
                          // sliver widget here, e.g. SliverList or SliverGrid.
                          sliver: SliverFixedExtentList(
                            // The items in this example are fixed to 48 pixels
                            // high. This matches the Material Design spec for
                            // ListTile widgets.
                            itemExtent: 48.0,
                            delegate: SliverChildBuilderDelegate(
                              (BuildContext context, int index) {
                                // This builder is called for each child.
                                // In this example, we just number each list item.
                                return ListTile(
                                  tileColor: Colors.blue.shade100,
                                  title: Text('Item $index'),
                                );
                              },
                              // The childCount of the SliverChildBuilderDelegate
                              // specifies how many children this inner list
                              // has. In this example, each tab has a list of
                              // exactly 30 items, but this is arbitrary.
                              childCount: 30,
                            ),
                          ),
                        ),
                      ],
                    );
                  },
                ),
              );
            }).toList(),
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
https://github.com/flutter/flutter/assets/3683599/18620c03-6110-4a33-8a9c-72c0b68f0285

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.13.6, on macOS 14.0 23A344 darwin-arm64, locale en-AU)
    • Flutter version 3.13.6 on channel stable at /Users/rorystephenson/sdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ead455963c (13 days ago), 2023-09-26 18:28:17 -0700
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/rorystephenson/sdk/android
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/rorystephenson/sdk/android
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.13.0

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

[✓] Android Studio (version 2022.3)
    • 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 17.0.6+0-17.0.6b829.9-10027231)

[✓] VS Code (version 1.82.3)
    • 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 (4 available)
    • ONEPLUS A6000 (mobile)  • 2ed743fb                             • android-arm64  • Android 11 (API 30)
    • iPhone 15 Plus (mobile) • D3649EE4-B818-4DA5-A5BB-DA903E38636C • ios            • com.apple.CoreSimulator.SimRuntime.iOS-17-0 (simulator)
    • macOS (desktop)         • macos                                • darwin-arm64   • macOS 14.0 23A344 darwin-arm64
    • Chrome (web)            • chrome                               • web-javascript • Google Chrome 117.0.5938.149

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

• No issues found!

Thanks for the report. Reproduced this on master channel as well.
I think the actual behavior/result is: The outer view gets scrolled but gets "restored" to the old position when flicking the list.

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.13.6, on macOS 14.0 23A344 darwin-x64, locale en-VN)
    • Flutter version 3.13.6 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ead455963c (5 days ago), 2023-09-26 18:28:17 -0700
    • Engine revision a794cf2681
    • Dart version 3.1.3
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-34, build-tools 32.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio Giraffe.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.11.3

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

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio Giraffe.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 17.0.6+0-17.0.6b829.9-10027231)

[✓] Android Studio (version 2022.2)
    • 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 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.82.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.72.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 14.0 23A344 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 117.0.5938.132

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

• No issues found!

[!] Flutter (Channel master, 3.16.0-8.0.pre.15, on macOS 14.0 23A344 darwin-x64, locale en-VN)
    • Flutter version 3.16.0-8.0.pre.15 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 0194d93665 (45 minutes ago), 2023-10-09 21:58:28 -0400
    • Engine revision 92880e9847
    • Dart version 3.3.0 (build 3.3.0-3.0.dev)
    • DevTools version 2.28.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-34, build-tools 32.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio Giraffe.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.0)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15A240d
    • CocoaPods version 1.13.0

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

[✓] Android Studio (version 2022.3)
    • Android Studio at /Applications/Android Studio Giraffe.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 17.0.6+0-17.0.6b829.9-10027231)

[✓] Android Studio (version 2022.2)
    • 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 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.82.3)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.74.0

[✓] Connected device (3 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64  • Android 11 (API 30)
    • macOS (desktop)  • macos            • darwin-x64     • macOS 14.0 23A344 darwin-x64
    • Chrome (web)     • chrome           • web-javascript • Google Chrome 117.0.5938.149

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

! Doctor found issues in 1 category.

cc @Piinks as I noticed you have been aggregating the various NestedScrollView issues.

Adding a +1 to this.
I have another sample that reproduces this.
When I remove the SliverOverlapInjector it makes it more difficult to reproduce, but it is still possible. And only with BouncyPhysics.
class NestedScrollViewExampleApp extends StatefulWidget {
  const NestedScrollViewExampleApp({super.key});

  @override
  State<NestedScrollViewExampleApp> createState() => _NestedScrollViewExampleAppState();
}

class _NestedScrollViewExampleAppState extends State<NestedScrollViewExampleApp> with SingleTickerProviderStateMixin {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        children: [
          Expanded(
            child: NestedScrollView(
              headerSliverBuilder: (context, innerBoxIsScrolled) => [
                SliverToBoxAdapter(
                  child: Container(color: Colors.green, height: 300),
                ),
                SliverOverlapAbsorber(
                  handle: NestedScrollView.sliverOverlapAbsorberHandleFor(context),
                  sliver: SliverList.list(
                    children: [
                      Container(
                        color: Colors.blue,
                        height: 64,
                      ),
                      Container(
                        color: Colors.white,
                        height: 64,
                      ),
                    ],
                  ),
                ),
              ],
              body: SingleChildScrollView(
                child: Container(
                  decoration: const BoxDecoration(
                    gradient: LinearGradient(
                      begin: Alignment.topCenter,
                      end: Alignment.bottomCenter,
                      colors: [Colors.black, Colors.blue],
                      stops: [0, 1],
                    ),
                  ),
                  height: 800,
                ),
              ),
            ),
          ),
        ],
      ),
    );
  }
}

I have a video as well, I am repeating swipe up swipe down motion repeatedly my finger leaves the screen each time.
https://github.com/flutter/flutter/assets/12874766/1ecb4970-5fae-426e-86fb-37332c10e21a

I have never delved in the Flutter framework code so I'll track my investigation here hopefully someone with more experience will then find this useful and create a PR:
So far it seems that the function _getMetrics is the culprit.

Inside the extra variable, the value is suspicious when the "jump" happens.

While testing that I also came across this behavior, after flinging, but not quite till the top of the outer scrollable, the inner scrollable still performs "bounce" The first fling is bad, ignore that, but the subsequent ones show the issue. The white background should not be visible imo. The second fling up presented the original issue.
https://github.com/flutter/flutter/assets/12874766/1dd2cc6d-a8fe-4579-90a0-488898828591

I think I found it:
We want to go to the underlined if statement, but the inner position is not fully setteled? yet; or there is a rounding error when the spring animation is finishing; or the spring animation finishes but does not properly set the inner scroll position to 0 but rather keeps the spring's animation final position, which may overshoot the 0? All these are guesses.

So for anyone wanting a quick dirty fix, throw this at the beginning of _getMetrics()
    if (innerPosition.pixels <= precisionErrorTolerance && innerPosition.pixels >= -precisionErrorTolerance) {
      innerPosition.correctPixels(0.0);
    }

It just hides the underlying issue, which I am now committed to finding and fixing, once I figure out how to set up a dev env for Flutter that is :)

So this is likely the proper fix:
Either check the addition and if it is within the precisionErrorTolerance return proper 0.
-OR-
Instead of == on doubles, convert the check to an .abs() with the precisionErrorTolerance.


Add arm_container to support Linux arm64 builds

The documentation for Linux containers details both amd64 and arm64 but this Starlark module only provided support for container, which meant that there was no convenient analogue for arm_container in YAML for repositories using Starlark.
cc @fkorotkov, apologies for the ping but it looks like no one is following this repo so I figured it's likely this PR wouldn't get seen otherwise.

Container errored with 'ImagePullBackOff: Back-off pulling image "cirrusci/cirrus-cli:latest"'

Hm, haven't seen that one before. 🤔

Merging on red since the CI config is outdaged and I fixed it in 71680fb6f6165ab23aedf5db361224fa1de1c0d4


Tagging components that are more experimental or compliant

Past research has shown some future users of the design system were concerned with compliance. We want to be able to highlight components that we have a high confidence meet GC standards.
Additionally, with the removal of the Alpha banner and our goal of shipping components as they're built, we want to flag any that are useful but may carry unknown risks or are less researched.

[ ] look into options beyond alpha, beta
[ ] document findings and rationale
[ ] choose names and document design decision
[ ] apply to component pages and overview

@SmartMouthWords – to research, propose solution and names
@melaniebmn –  to be consulted, to apply tags
@sarahhobson – to be consulted, to review, offer advice as needed

gathering research and notes: https://docs.google.com/document/d/1uuKX1m3bn7tQFA9FVTXD08NByWcybP1M0Od18FHlN5Y/edit#


Allow resuming optimization from a given clang-format file

This allows both continuing an existing optimization sequence as well as take an existing clang-format and better fit it to the code base.

This one is also done.


Sampling interval

Hi,
We would like to use the sensor in extremly low power environment. And we were wondering if it is possible to change the VocAlgorithm_SAMPLING_INTERVAL definition to something like 5 minutes and then call this algorithm in the specified interval or would it negatively impact the output values?
If not, is there any other way to run the sensor efficiently with 5min or longer intervals?

Hi neja20
SGP40/SVM40 in combination with VOC Index only supports continuous operating mode. For the VOC Algorithm to work it expects an updated value every second.
Best regards

Hi,
We would like to use the sensor in extremly low power environment. And we were wondering if it is possible to change the VocAlgorithm_SAMPLING_INTERVAL definition to something like 5 minutes and then call this algorithm in the specified interval or would it negatively impact the output values?
If not, is there any other way to run the sensor efficiently with 5min or longer intervals?

It is possible. I use the SGP40 (next to BME688) per minute, in an ESP32 deep sleep environment (ULP update in between per minute, not per second) and a big run every 5 minutes for other sensors. I am still working on the ULP, but i measured the same index measuring per second or per minute (same devices, same room, interval only difference).
Key is to change the interval in the header file:  VocAlgorithm_SAMPLING_INTERVAL (60.)
But there is a big but. In my experience it is critical to let the device learn for around two hours in a stable environment. Keep the VOC levels those two hours very stable, be cautious with opening doors and windows while in this period. After this period the results were very satisfying, of course keep in mind you loose some agility / quick responses. But the index dynamics and values are 95% similar.
I tried modifying SRAW_STD_INITIAL and TAU_INITIAL_MEAN, without success.

Hi remyhx
Thank you for your input. It is indeed possible to change the sampling interval expected by the algorithm. But we as sensirion don't support the high efforts required to perform this task and get a reasonable and qualifiable index output.
But if anyone would like to take that challenge and adapt the algorithm to support different sampling intervals and take the effort to learn the difference in the resulting signal dynamics, feel free to do so. That's why we provide the algorithm open source, enabling others to take the standard as starting point and invest all their energy in innovating things.
It's very nice to see people invest their time using our sensors, so thank you for that.
We will be publishing an updated version of the Gas Index Algorithm within the next month, and will also provide documentation on the algorithm tuning parameters. It is also planned to provide a tool, to get people to experience the influence of the tuning parameters in a more intuitive way. So stay tuned. I'm excited what you'll think of that.
And thanks for the compliment ;)

Any news about this functionality ? 😎

The gas index algorithm is publicly available in those two repository:
C and Python:
https://github.com/Sensirion/gas-index-algorithm
Arduino:
https://github.com/Sensirion/arduino-gas-index-algorithm
Please check the header files for the documentation of the algorithm parameters, e.g.
https://github.com/Sensirion/gas-index-algorithm/blob/master/sensirion_gas_index_algorithm/sensirion_gas_index_algorithm.h

MBjoern commented on Nov 10, 2021 :-
We will be publishing an updated version of the Gas Index Algorithm within the next month, and will also provide documentation on the algorithm tuning parameters. It is also planned to provide a tool, to get people to experience the influence of the tuning parameters in a more intuitive way
Any update on this  functionality ?
Thank You
Paul

Yes and i would also want to know if the interval would be updatable by code and not hard coded :)
Outlook voor iOShttps://aka.ms/o0ukef downloaden

Van: dingoxx @.>
Verzonden: Wednesday, May 18, 2022 9:12:14 AM
Aan: Sensirion/embedded-sgp @.>
CC: Remy Hurx @.>; Mention @.>
Onderwerp: Re: [Sensirion/embedded-sgp] Sampling interval (#130)
MBjoern commented on Nov 10, 2021 :-
We will be publishing an updated version of the Gas Index Algorithm within the next month, and will also provide documentation on the algorithm tuning parameters. It is also planned to provide a tool, to get people to experience the influence of the tuning parameters in a more intuitive way
Any update on this functionality ?
Thank You
Paul
—
Reply to this email directly, view it on GitHubhttps://github.com/Sensirion/embedded-sgp/issues/130#issuecomment-1129653430, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AR3JADJQ7LHTSEHO6XMUSBDVKSJ45ANCNFSM4ZNPOMIA.
You are receiving this because you were mentioned.Message ID: @.***>

We updated the algorithms to allow changing of sampling interval through an API. The sampling interval has to be set on initialization.
Check the low power duty cycle example for e.g. raspberry pi on how to use the interface
https://github.com/Sensirion/gas-index-algorithm/blob/81a7819fc56ce8e0dcf7e998ab05941e42b2758b/examples/raspberry-pi/low_power_example.c#L59

Hi Psachs
Thank you fo your update
Any dates on the promised  documentation on the algorithm tuning parameters and the  tool that was mentioned earlier ?
We have a planed shipment of 14K Q1 2023 and need to have as much info as possible
KR
Paul

Hi @dingoxx
For a description of the tuning parameters have a look at the header file or the technical documentation of the SVM4x.
This is our reference module with a SGP40/SG41 and SHT40 and uses the same algorithm as published here.
Visit the product page for more information:
https://sensirion.com/products/catalog/SEK-SVM4x/
or use this direct download link
https://sensirion.com/media/documents/FBD0A26B/61EA8BFA/Sensirion_Gas_Sensors_SEK-SVM4x_Technical_Description.pdf
If you are interested in the reference design, you can find all information on Github:
https://github.com/Sensirion/svm40-hardware
https://github.com/Sensirion/svm41-hardware
The tool you are looking for is most probably our sensor evaluation software called ControlCenter
https://sensirion.com/products/sensor-evaluation/control-center/
This will also install our DataViewer tool, that allows you to plot data recorded with ControlCenter and apply algorithm parameters.
However this only works if you use our evaluation kit, so I am not sure if this solution fits your need.
Please let me know if you need any help or if you have more information on what kind of tool you are looking for.
Best regards,
Pascal


author not show when article save to pocket

when I tried to save articles to http://getpocket.com. the author's name does not appear. even in another article I am trying to save, name of the author comes up with the wrong name.
in the theme-setup article, author name that appears is not my name but 'author override'

If you can dig up how Pocket interrupts content I can investigate what's going on. As far as I've tested the theme uses rich snippets to properly markup publisher/author data, published date, title, etc etc. At least as far as Google's Rich Snippets testing tool is concerned.

hello mr. ary,
hey, i'm just a noob to github but i'm trying to install your theme to give it a test run & i'm finding it to be high rocketscience.
it's the first theme i've not been able to successfully install.
why is this such a pain in the ass?
please help,
j
From: Benedictus Arya<EMAIL_ADDRESS>To: mmistakes/minimal-mistakes<EMAIL_ADDRESS>Sent: Thursday, April 30, 2015 5:34 PM
Subject: [minimal-mistakes] author not show when article save to pocket (#142)
when I tried to save articles to http://getpocket.com. the author's name does not appear. even in another article I am trying to save, name of the author comes up with the wrong name.in the theme-setup article, author name that appears is not my name but 'author override'—
Reply to this email directly or view it on GitHub.

I do not know how pocket work. when I tried to look at the data structure another website, I can not find special features that indicate the author.
things that look the same, author part all located within the section. but when I tried to move into the section, still no luck.
I also tried adding id, ref, class to the author. still no luck. I refer to the theme-setup page that author is wrong, 'author override' has an element of 'author' in its ref.
I also try to keep in https://www.readability.com/, author also do not appear.

@jtobiasl Nature of the beast. Jekyll isn't really the most user friendly piece of software for non-devs yet. It doesn't have an official way of installing themes which is why all of this is such a pain right now. Getting Jekyll installed and running properly can be a challenge in itself, let alone copying over someone's repo to apply as a "theme."
Not much else I can do about that right now.

@mastito03 I tried both Pocket and Readability. I'm not seeing anything weird with the author names being wrong on posts or other pages. Theme Setup is the only strange one, and I believe it's because it has the author override code on the page. Pocket and Readability are getting confused by it, which there's nothing I can do about that.
Closing because this seems to be an edge case for a page that is specific to the theme. I'm not concerned that it says "Author Override" there since you shouldn't be including that page with your site anyways...


Nim ports of Buzzword and RockScissorsPaper

Took some liberties with both of these...

Buzzword: I declared separate arrays for the data, instead of a single 39-member array; and I set it to check for "n" instead of "y" on if to keep going, or not.
RockScissorsPaper: made use of an enum to spell out how you or the CPU won, vs a blanket statement. Had some help from the Nim Discord on how best to use the enum.

The Nim Discord folks had a more-optimized version of the RSP outcome function; included that in a follow-up commit; you can compare them to see how one works vs the other.


PyOp only supports string attribute

Recently, I add attribute padding_length(type: int64_t) for GPT2Tokenizer. Unittest of GPT2Tokenizer tests not only the C++ version but also implementation with PyOp:
        @onnx_op(op_type="GPT2Tokenizer",
                 inputs=[PyCustomOpDef.dt_string],
                 outputs=[PyCustomOpDef.dt_int64, PyCustomOpDef.dt_int64],
                 attrs=["padding_length"])
        def bpe_tokenizer(s, **kwargs):
            # The user custom op implementation here.
            TestGPT2Tokenizer.pyop_invoked = True
            max_length = kwargs["padding_length"]
            input_ids = np.array(
                [TestGPT2Tokenizer.tokenizer(st_, max_length=max_length)["input_ids"] for st_ in s])
            attention_mask = np.array(
                [TestGPT2Tokenizer.tokenizer(st_, max_length=max_length)["attention_mask"] for st_ in s])
            return input_ids, attention_mask

When I run the test, I got the following error:
onnxruntime.capi.onnxruntime_pybind11_state.RuntimeException: [ONNXRuntimeError] : 6 : RUNTIME_EXCEPTION : Exception during initialization: Unable to find attribute 'padding_length' due to 'Attibute name and type don't match'.

After my investigation, I found the root of the error:
  PyCustomOpKernel(OrtApi api, const OrtKernelInfo* info, uint64_t id, const std::vector<std::string>& attrs)
      : api_(api),
        ort_(api_),
        obj_id_(id) {
    size_t size;
    for (std::vector<std::string>::const_iterator it = attrs.begin(); it != attrs.end(); ++it) {
      size = 0;
      OrtStatus* status = api_.KernelInfoGetAttribute_string(info, it->c_str(), nullptr, &size);
      if (api_.GetErrorCode(status) != ORT_INVALID_ARGUMENT) {
        std::string error_message(api_.GetErrorMessage(status));
        api_.ReleaseStatus(status);
        throw std::runtime_error(MakeString(
            "Unable to find attribute '", *it, "' due to '",
            error_message, "'."));
      }
      api_.ReleaseStatus(status);
      attrs_values_[*it] = "";
      attrs_values_[*it].resize(size);
      status = api_.KernelInfoGetAttribute_string(info, it->c_str(), &(attrs_values_[*it][0]), &size);
      if ((status != nullptr) && (api_.GetErrorCode(status) != ORT_OK)) {
        api_.ReleaseStatus(status);
        throw std::runtime_error(MakeString(
            "Unable to retrieve attribute '", *it, "' due to '",
            api_.GetErrorMessage(status), "'."));
      }
      attrs_values_[*it].resize(size - 1);
      api_.ReleaseStatus(status);
    }
  }

We will only try to fetch the attribute by string type, so we meet the incompatibility of the attribute type.
My suggestion is the the attrs parameter of onnx_op could be a dict, the key is the name and the value is the type.

@xadupre and @wenbingl, any update on this open issue?  I have a similar need for some custom ops using @onnx_op in python that require int64 attributes.

@settle @Toudsour @wenbingl I am using release 0.7.0 and @onnx_op still only support string. please let me know if this function is realized, thank you very much~

@wuzieryun, I merged a PR #425 to support int64 and float type in PyOP, do you want to have a try?

Hi, I am trying to implement a customized op with an attribute made of a list, I also got the error RUNTIME_EXCEPTION : Exception during initialization: Unable to find attribute 'boundaries' due to 'Attribute name and type don't match'. Does onnxruntime-extensions plan to support list attribute in the future?

@wmFrank, You can pass a tensor-like object through an operator input, which is more flexible.


pill consuming characteristics

When using the keybaord "Space" on Selectable Pill, transition state is somewhat weird
https://79de1893.uitk.pages.dev/?path=/story/lab-pill--selectable-pill


util to discover a running container's source path

You may not know the source path of the running container if someone else built it
there are some tricks I use for figuring out the remote path
for dlv at least, using squashctl from the command line, when you make a breakpoint, dlv reports the full path to the function it finds
Turned this into docs/utils

Would be cool if there is a way squash can "auto config" the remote path or at least suggest it for you when there is an error configuring the breakpoints (for example.. if using the IDE and we try set the breakpoint and it shows up as unverified, then we can log an error and also say "did you set the remote path correctly" or even better "did you set the remote path correctly? maybe you could try /foo/bar/whatever" <-- that we discovered automatically?


Fixing errors when compiling UMD types

This will fix the issue found on thursday (preventing ts playgrounds from running)

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15092/merge
Test environment:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15092/merge/index.html
To test a playground add it to the URL, for example:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15092/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15092/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15092/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15092/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15092/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15092/merge#BCU1XR#0

Adding a test so it won't happen again

Visualization tests for WebGPU (Experimental)
Important - these might fail sporadically. This is an optional test.
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15092/merge/testResults/webgpuplaywright/index.html

WebGL2 visualization test reporter:
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15092/merge/testResults/webgl2playwright/index.html

@deltakosh - I made some rename changes to the shares ui components library to avoid duplication, otherwise inspector, nme, nge declarations were failing standard tsc call. Want to review this again?

Visualization tests for WebGPU (Experimental)
Important - these might fail sporadically. This is an optional test.
https://babylonsnapshots.z22.web.core.windows.net/refs/pull/15092/merge/testResults/webgpuplaywright/index.html


renames "z" Node2D property to "z_index"

For #15078, renames z Node2D property to z_index, making possible to use a z variable in scripts.
To check :

[ ] there is a breaking changes list where I can add this ?
[ ] must be added an auto correction to change  z to z_index for current 3.0 projects ? (I tested opening a project with z property with the z_index build, no crash, only z values are lost.
[ ] add it to the 2.1.4 -> 3.0 migration tool
[x] update the doc

@akien-mga can you take a look to add this change to the migration tool ?

VisualServer may need to be checked too, it has a canvas_item_set_z used by YSort and others.

z property of Item struct from VisualServerCanvas isn't related to the problem encountered, but yes you are right, I renamed it for consistency.
So...I guess it can be OK for the merge. Just do not forget to add it to migration tool.

nice, so i (and countless others) need to change all the .z's to .z_order now... and what was the reason again?

Using single letter as variable name is not uncommon. This is how it'd be if you try to var z without the fix.

The pull request was made because users were affected by the issue and cared about it enough to fix it. The issue existed. We reached that consensus long ago.
Converting is a one-time process and should be automatic. If you have problem with it, make an issue.
Finally, please respect other contributors.

P.S. 3.0 is a compatibility breaking update. We mentioned this countless of times. You should never expect code from 2.1 to be used in 3.0 without some work. Be grateful that there's a converter to alleviate it a bit.


Adding Package Index to the Repository

Adding package index. Will be leveraged during release to link out to the appropriate changelog file as well.
Generating Code PR
@Azure/azure-sdk-eng

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Codecov Report

Merging #4998 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #4998   +/-   ##
=======================================
  Coverage   49.08%   49.08%
=======================================
  Files        6502     6502
  Lines      182271   182271
=======================================
  Hits        89470    89470
  Misses      92801    92801

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 d066b5f...709905c. Read the comment docs.


SQLITE3 AND TKINTER

AMAZING CONNECTION

hey @Priyanshu729 you should resolve the issues of your previous PRs #70 and #71
Unless you make valid PR, your PR will not count towards Hacktoberfest

hey @Priyanshu729 you should resolve the issues of your previous PRs #70 and #71
Unless you make valid PR, your PR will not count towards Hacktoberfest

SIR HOW I RESOLVE PRIME.PY I CAN'T UNDERSTAND

Sir please accept my request.I will sure that if u run this u are amazed

hey @Priyanshu729 I'm getting this error

@Priyanshu729 Can you run the program for me and share the screenshot?

@Priyanshu729 You should not try to directly upload the files to your repository.

I'm not sure. But the program needs to run on other's machine as well as yours.
For the error problem can you please share the screenshots?

WATCH THIS NO ERROR IN MY COMPUTER

HOW IT LOOKS PLEASE REVIEW AND RUN THIS IN SQLITE.IF ANY ERROR COMES THEN SEND ME YOUR MAIN PROGRAM AND TERMINAL PORTION.I WILL SOLVE IT

Okay

hey @Priyanshu729 You need to change the file name and location -

Select Edit file

Rename the file from SQL AND PYTHON to python/sql_and_python.py

Commit the changes

After running the program -

It creates a file Student.db

And results in an error showing no such table: STUDENTS

Yes it creates school .db
And second error is  when u once run the program before that u will comment
out the create table full part
On Sat 3 Oct, 2020, 10:28 AM Tasnim Zotder<EMAIL_ADDRESS>wrote:

After running the program -

It creates a file Student.db
[image: image]
https://user-images.githubusercontent.com/44049528/94983708-f62cd800-0562-11eb-92a4-05a489acc405.png
2.
And results in an error showing no such table: STUDENTS
[image: image]
https://user-images.githubusercontent.com/44049528/94983712-093fa800-0563-11eb-883b-45ac75d6f6c3.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#issuecomment-703047108,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAIWD74L2HDTN7KSZ7ITSI2VQPANCNFSM4SBIGB6A
.

now run this program there might be error i.e database malform then delete database and again create database.when u run this first time after that second time comment out the create table full portion

Run this program in vs code if u are getting error then send me a screenshot

Can u accept this or reject my request?
On Thu 15 Oct, 2020, 11:02 AM stale[bot]<EMAIL_ADDRESS>wrote:

This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#issuecomment-708907854,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAISLERFBQ4A3WF4POPTSK2COHANCNFSM4SBIGB6A
.

@Priyanshu729 let me see the issue tonight

Bro as roll no is primary key that's why update is not working use
name,class for update
On Thu 15 Oct, 2020, 10:42 PM Tasnim Zotder<EMAIL_ADDRESS>wrote:

@tasnimzotder commented on this pull request.
The application is awesome 🎉
But update isn't working 😕
[image: image]
https://user-images.githubusercontent.com/44049528/96163472-8f7ec580-0f37-11eb-9034-5ee89edff8a5.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#pullrequestreview-509597804,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAIR6ERDGEFZ2DI3O3ZTSK4URLANCNFSM4SBIGB6A
.

Pls accept this and add hackoberfest label

Okay. Got it.

Thanks bro can I get money for this or simply t-shirt 😂😂

The effort I have given I think u should give me some money for this 🙂🙂

This projects are like diamond in the sky.

Thanks bro can I get money for this or simply t-shirt . The effort I have
given I think u should give me some money for this 🙂🙂 . These projects
are like diamond in the sky.
On Thu, 15 Oct 2020 at 23:01, Tasnim Zotder<EMAIL_ADDRESS>wrote:

Merged #73 https://github.com/tasnimzotder/hacktoberfest-2020/pull/73
into master.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#event-3882780809,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAIVFB3ITAVQYKATYYADSK4WWPANCNFSM4SBIGB6A
.

Never post your credentials on the public.

@Priyanshu729 You'll get your tee or tree from DigitalOcean after qualifying Hacktoberfest.

Sir I have a problem in my home page there is code page coming and telling
enter your code from where can I get code??
On Fri 16 Oct, 2020, 12:57 PM Tasnim Zotder<EMAIL_ADDRESS>wrote:

@Priyanshu729 https://github.com/Priyanshu729 You'll get your tee or
tree from DigitalOcean after qualifying Hacktoberfest.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#issuecomment-709876498,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAITWYRJSZJH2CQ25I73SK7YVHANCNFSM4SBIGB6A
.

How to solve code problem
On Fri 16 Oct, 2020, 1:07 PM Priyanshu Awasthi, <
<EMAIL_ADDRESS>wrote:

Sir I have a problem in my home page there is code page coming and telling
enter your code from where can I get code??
On Fri 16 Oct, 2020, 12:57 PM Tasnim Zotder<EMAIL_ADDRESS>wrote:

@Priyanshu729 https://github.com/Priyanshu729 You'll get your tee or
tree from DigitalOcean after qualifying Hacktoberfest.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/tasnimzotder/hacktoberfest-2020/pull/73#issuecomment-709876498,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ARGWAITWYRJSZJH2CQ25I73SK7YVHANCNFSM4SBIGB6A
.


Add World::is_alive(Entity) method

Also fix a bug in create_now(), which would not update the stored
Generation in some cases.
Implements #34

Impressive, thank you!


Forbid bypasses for the HI register (fixes #424)

There have been a lot of quite different ways to prevent bypasses for the HI register, so here some reasons for the chosen one are described (and also some features)

This patch actually does not merely prevent forwarding data from the "path 2" (second destination), but forbids bypasses for the HI register completely. The other options were to keep bypasses for the HI register from the first destination (for mthi) by adding some more complex code to methods of DataBypass class or allow bypasses for the aforementioned register completely by moving the information about the target destination register(HI) for mthi instruction from dst to dst2(this would require an introduction of a new operation type for mthi). However, in my opinion, the sequence mthi, mfhi cannot be considered as a common case, hence allowing for the description of the issue #424, both of the options end up being objectionable.

Well, this is quite questionable. Data is still bypassed as a pair formed by the second and first destination registers so as to be able to introduce a new form of data adaptation (or restore bypasses for the HI register) in case we need one.

An interface of BypassCommand class has been simplified by removal of some redundant methods.

I have introduced a new method called trace_new_dst2_register in order to garner information about the registers used for the second destination. Perhaps, it can bring more flexibility than the old one with a destination index passed as the third argument. I have not made any assumptions on types of instructions which can have valid non-zero registers considered as targets for the second destination, that's why a new method was introduced in order to identify an actual execution path and avoid copypasting.


[Documentation] Update the installation docs to make the process clearer

[ ] Rewrite the 'compile from source' section to have subsections per OS, allowing users to easily see together all the commands to run.

[ ] Make sure it is clear that for MacOS users, cmake, rust, and ninja have to be installed, as well as how to install XCode. #377

[ ] On MacOS + anaconda, the default python path is correctly set to the environment python, but python3 (may) point to usr/bin/python3 (verify this). This can cause the tests to fail, because PyTest is using the wrong Python version. In #377, the command PYTHON=/Users/username/anaconda3/envs/envname/bin/python make clean-all all was used.

[ ] On Ubuntu, specify that libstdc++-dev needs to be installed

On MacOS + anaconda, the default python path is correctly set to the environment python, but python3 (may) point to usr/bin/python3 (verify this). This can cause the tests to fail, because PyTest is using the wrong Python version. In https://github.com/PennyLaneAI/catalyst/issues/377, the command PYTHON=/Users/username/anaconda3/envs/envname/bin/python make clean-all all was used.

We tried to verify this but unfortunately couldn't reproduce. Both on macos and linux, with both conda and venv the Python from the active environment was picked up. The only exception is when the conda environment was created without specifying a Python version (just conda create -n myenv), but in that case envs/myenv/bin was empty anyways, so there is no active Python executable anyways.

On Ubuntu, specify that libstdc++-dev needs to be installed

Do you have some context for this?

We tried to verify this but unfortunately couldn't reproduce.

Ah 🤔 If I recall, it was @Qottmann who reported this.

On Ubuntu, specify that libstdc++-dev needs to be installed

Yep, this issue was reported by @dwierichs. He had run
sudo apt install clang lld ccache libomp-dev ninja-build make cmake

Then, running make all was resulting in the error
cannot find -lstdc++: No such file or directory

However, @dwierichs did not have g++ previously installed on his system, and apt installing clang was not pulling in libstdc++. He searched the internet, and came across this post, which recommended installing g++-12 in order to pull in libstdc++-dev.
This then resolved the error.
My assumption here is that by including libstdc++-dev in the apt list, we will resolve this issue for other users.

We tried to verify this but unfortunately couldn't reproduce.

Ah 🤔 If I recall, it was @Qottmann who reported this.

Definitely possible that I had some other python version installed before installing conda (in fact must be no?). Might still be valuable to someone installing to check their which python3 path and make sure its pointing to the correct python version/env they want.

Definitely possible that I had some other python version installed before installing conda (in fact must be no?).

Yes on Ubuntu there is always at least one version of Python installed (the "system Python").
I couldn't reproduce the issue where which python3 didn't pick up the version active in the conda/venv environment, but we can add a reference to this problem in a "known issues" section. Thanks for the suggestion!

My assumption here is that by including libstdc++-dev in the apt list, we will resolve this issue for other users.

I'm a bit torn on this one. Looking at the clang package on ubuntu, it includes libstc++ as a dependency: https://packages.ubuntu.com/jammy/clang-14
This makes sense because it is a core requirement for any compiler to have an implementation of the standard library for their programming language available.
So to me this indicates there is a problem with the particular system setup, and there could be many such problems and causes depending on OS, compiler, etc. We simply can't anticipate all issues arising from setting up a working C++ toolchain.
But, I think adding this to a known potential issue section is reasonable, and we will also be adding a bit more information about supported compiler versions, as this has come up in a separate issue.

@dime10 as I was writing out my comment above, it did strike me as odd (that you could install clang without installing libstdc++0-dev!).
But I like the idea of a 'potential issues' section, where we can write potential error messages and the solution (if quick)

Quoting @erick-xanadu "Pointing to the ticket where the rust dependency was removed: https://github.com/PennyLaneAI/catalyst/pull/470"
Hence, the second task can be considered as done.


Sorry, you have been blocked

Describe the bug
Please enable cookies.
Sorry, you have been blocked
To Reproduce
    $prompt = json_encode($textObj)."\nTranslate to: ".$lagnString.".\nRetun all translations in JSON with this structure: \n".$jsonString;
    $result = $open_ai->chat([
        'model' => 'gpt-3.5-turbo',
        'messages' => [
            [
                "role" => "user",
                "content" => $prompt
            ]
        ],
        'temperature' => 0,
        'max_tokens' => 2000,
        'frequency_penalty' => 0,
        'presence_penalty' => 0,
    ]);

    print_r($result);

Code snippets
No response
OS
linux
PHP version
PHP 7.4
Library version
4.9

Possibly, in your coutry chatGPT API can't more be using in usual way due to politics of OpenAI company. But you can try find normal proxy and try use $open_ai->setProxy("https://address:port")

$open_ai->setProxy("https://address:port")

Hello, how can I add proxy user and password?

Hi SalimF,
Thank you for reaching out. Have you tried using basic authentication to
add the proxy user and password? You can use the following format:
@.***
@.***/basic_auth.
Let me know if this works for you or if you have any further questions.
Best regards,
Orhan
On Tue, Dec 12, 2023 at 10:35 PM SalimF @.***> wrote:

$open_ai->setProxy("https://address:port")
Hello, how can I add proxy user and password?
—
Reply to this email directly, view it on GitHub
https://github.com/orhanerday/open-ai/issues/124#issuecomment-1852682722,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AFKFT6SND34CJTLV5HEVDL3YJCWWLAVCNFSM6AAAAAA7OAPTLGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNJSGY4DENZSGI
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
Orhan ERDAY
Software Engineer

You can use the following format: https://username:password@URL <EMAIL_ADDRESS>Let me know if this works for you or if you have any further questions.

Hi thanks for reply,
I added proxy like this
$open_ai->setProxy( "myuser:mypass@http://<IP_ADDRESS>:9999") ;
But still I got this error.
Unsupported proxy syntax in 'myuser:mypass@http://<IP_ADDRESS>:9999': Port number was not a decimal number between 0 and 65535

Salim, did you test the proxy?
Maybe you can use
https://superuser.com/questions/1177384/how-to-test-if-proxy-is-working-correctly


Consider implementing number literals

Peano arithmetics is cool, but entering chains of s(s(... is impractical.
Numbers could be reparsed as those chains, but it makes me worry about the depth of the AST in my use case (counting potentially to a few millions).
I tried to hack in a solution, but I haven't found a way to supply predicates like % / etc. after parsing the literal.
What would be the best way to do that? Create a separate term containing the number that is not applicative?

Peano arithmetics is cool, but entering chains of s(s(... is impractical.

Agreed, that's more of a toy than a really usable arithmetic implementation.

What would be the best way to do that? Create a separate term containing the number that is not applicative?

Indeed, a new term type would be the way to go I think.
Defining custom predicates is more complicated. I tried something in this branch https://github.com/fatho/logru/compare/more-builtins but it still feels a bit chaotic due to how the solver interacts with different types of "universes".
Since this is more of a hobby project to me, I won't really have a lot of time expanding this. But feel free to take that branch as a base.

Had some time to work a bit on this project after all. I think this can be considered done after https://github.com/fatho/logru/pull/18, and with cut implemented (https://github.com/fatho/logru/pull/20), it should be possible to build some useful high-level abstractions on top of that.

Thanks for implementing so much stuff!


[erc721-multi-registry] add multiple ERC721 registry strategy

This adds a strategy that allows to check addresses balance on multiple ERC721 tokens registry
Changes proposed in this pull request:

@dievardump Strategy is live: https://snapshot.org/#/strategy/erc721-multi-registry


How to update IP address if they change?

Let me start out by mentioning I am just starting to learn Chef and Ruby so this could be something obvious.
I have the initial hosts file creation working well using Chef Override Attributes.  Have used the append, create, and remove features.
I suspect there is no built in ability to update an existing IP address to a new IP?  Simple Example:
<IP_ADDRESS>  myalias
I update my attribute from:
            "hostentries":{
              "myalias": {
                "ip": "<IP_ADDRESS>",
                "hostname": "myalias"

To:
            "hostentries":{
              "myalias": {
                "ip": "<IP_ADDRESS>",
                "hostname": "myalias"

I end up with both entries as such:
<IP_ADDRESS>  myalias
<IP_ADDRESS>  myalias
I have several ways to get around this but was wondering what might be a standard approach others have taken as this should be a fairly common task.
I have thought to build a hosts file in a separate location say /etc/hosts_chef and if there are any changes copy it over the original /etc/hosts.  Another less desirable option - have 2 lists of attributes one to create and others to remove so when one changes add the original to the remove list.
Any tips appreciated.  Thanks.

I'm not familiar with this cookbook but seems like you could try:
hostsfile_entry '<IP_ADDRESS>' do
ip_address '<IP_ADDRESS>'
action :update
end

True that might work.  But that would require me to make the change, then later after all the nodes have been updated to go in there and delete that piece of code.
Ideally looking for a way to make one change in one spot to do the updates.  My solution above with building a 2nd hosts file and only copying it over the original when there are changes will accomplish that but feels a bit messy.  I don't like my second option as it can be prone more to human error - IE someone updates it in the original list but does not put the original value in the "remove" list - which can break the system.

Hi @jleonett
This is outside of the scope of this cookbook. Chef does not know the "prestate" and "poststate", so it's not possible to do a diff like that unfortunately.
It sounds like you want to manage the entire file. Why not just use a simple template resource that renders /etc/hosts directly from attributes instead then?

Kind of what I was suspecting.  Thanks for confirming.  I am going to look into the template option as well.  Kind of new to Chef so I need to read up on the template capabilities.  Just have not used one yet.  As long as I can add to a template from multiple recipes it should work well.


Number Type

Adding Number to Clay.
Number is a discriminated union of: SByte, Byte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, Double.

Looks OK


Custom styling for required properties

Right now it's not possible to visually distinguish between required and not required fields at glance because all fields are displayed in bold text.
The goal of this PR is to allow users to visually customize required fields.
When a property is marked in the json schema as required:
{
  "title": "Person",
  "type": "object",
  "required":["name"],
  "properties": {
    "name": {
      "type": "string",
      "description": "First and Last name",
      "minLength": 4,
      "default": "Jeremy Dorn"
    },

A new css class called "required" will be generated on the corresponding label:
<label class=" required control-label" style="display: inline-block; font-weight: bold;">name</label>

Note that the font-weight:bold is still present, so users will have to use !important in their css to disable the default style. This will be solved when https://github.com/jdorn/json-editor/pull/346 is merged.
If the field is not listed as required then the class won't be added.

Wouldn't it be easier to just apply a class to the editor container?  That way you don't need to modify all the editor classes and themes, just the base setContainer method.

@jdorn I see your point, I'm going to rework this. It's long time overdue :)

@jdorn This is ready for you to review, code is a lot simpler now.

@jdorn any chance to get this one merged soon ? it's a few lines of code :)

@jdorn bumping this PR again.


v0.6.0 - screen, punchbag, RAM saving

Let me know if you think the comments above need addressed, if not I can mark as approved straight away


third party tx request won't trigger portal popup

This can't be reproduced all the time.
Users can still manually open the popup and the UI is not frozen.

Maybe not related to this bug, but we can use chrome.window.update to focus the popup again if there's new auth request
https://developer.chrome.com/extensions/windows

fixed by b9111b14c410c78ed37f692afda5995efa79d907 and b9111b14c410c78ed37f692afda5995efa79d907


Any attempts at making this a chrome plugin?

As a companion or addition to the react devtools plugin would be great. Wondering if any restrictions have been found?

I'm working on it in rempl branch. Coming soon ;)

Since 1.6 it's possible to run inspector in Chrome devtools, see release notes


EIP-4844: Free the blobs

This PR reintroduces and further decouples blocks and blobs in EIP-4844, so as to improve network and processing performance.
Block and blob processing, for the purpose of gossip validation, are independent: they can both be propagated and gossip-validated in parallel - the decoupled design allows 4 important optimizations (or, if you are so inclined, removes 4 unnecessary pessimizations):

Blocks and blobs travel on independent meshes allowing for better parallelization and utilization of high-bandwidth peers
Re-broadcasting after validation can start earlier allowing more efficient use of upload bandwidth - blocks for example can be rebroadcast to peers while blobs are being downloaded
bandwidth-reduction techniques such as per-peer deduplication are more efficient because of the smaller message size
gossip verification happens independently for blocks and blobs, allowing better sharing / use of CPU and I/O resources in clients

This design in particular sends each blob on a separate subnet, thus maximising the potential for parallelisation and providing a natural path for growing the number of blobs per block.
Changes compared to the current design include:

BlobsSidecar is split into individual BlobSidecar containers - each container is signed individually by the proposer - the signature is used during gossip validation but later dropped.
KZG commitment verification is moved out of the gossip pipeline and instead done before fork choice addition, when both block and sidecars have arrived

clients may verify individual blob commitments earlier

more generally and similar to block verification, gossip propagation is performed solely based on trivial consistency checks and proposer signature verification
by-root blob requests are done per-blob, so as to retain the ability to fill in blobs one-by-one assuming clients generally receive blobs from gossip
by-range blob requests are done per-block, so as to simplify historical sync
range and root requests are limited to 128 entries for both blocks and blobs - practically, the current higher limit of 1024 for blocks does not get used and keeping the limits consistent simplifies implementation - with the merge, block sizes have grown significantly and clients generally fetch smaller chunks.

https://hackmd.io/@arnetheduck/BJiJw012j contains further notes and information.
TODO:

[ ] implement cryptography properly
[ ] consider more carefully the case of a proposer publishing two blobs for the same index, one valid and one invalid, to separate peers hoping for a network split due to the seen-once rule:

we can clear the seen flag, then try to download the correct blob from other peers
we can propagate both blobs and specify that peers that have seen more than one must drop the block from fork choice

[ ] should the blobs be signed in the PROPOSER domain or a separate one?

@arnetheduck since this PR is under active development and is still a draft, I'm not going to force-push to fix the conflicts now. Let me know if you need me to fix the conflicts.

@hwwhww thanks, I pushed a merge commit fixing the renames :)

Here is the simulation results on block + blobs dissemination delays (coupled v.s. decoupled). Decoupled approach definitely wins with that respect:

(source data)
Decoupling also appears to save global network traffic:

(original sheet)

FYI I'm looking into linter and test errors after fixing conflicts. 👀

@arnetheduck
I fixed conflicts and tests here: https://github.com/ethereum/consensus-specs/tree/pr3244-fix
@asn-d6 @dankrad, it includes some polynomial-commitments.md fixes in https://github.com/ethereum/consensus-specs/commit/a7e45db9ac2b60a33e144444969ad3ac0aae3d4c

@hwwhww excellent, thanks! I've pushed the commits here too

@arnetheduck I fixed conflicts and tests here: https://github.com/ethereum/consensus-specs/tree/pr3244-fix CI is green now. Let me know if I can push the commits or if you'd like to cherry-pick it.
@asn-d6 @dankrad, it includes some polynomial-commitments.md fixes in a7e45db

LGTM!


Control Panel: some keys disabled if in visual mode

If the editor is in visual mode while the control panel is popped, the keys 'a', 'i', 'o', will not register while typing a command.
Steps to reproduce:

In editor, go into visual mode
Pop control panel with Ctrl + Shift + P (or search panel with Ctrl + P)
Try to use keys 'a', 'i', 'o' to input text in the control/search panel

Seems like the keys to move from normal mode to insert mode are being disabled when in visual mode, but maybe at too high a level?

Thanks for reporting the issue! Looks like this was fixed in https://github.com/onivim/oni2/pull/2429


🐛 BUG: Google ad console error on soft navigation

What operating system are you using?
Mac
Describe the Bug
On the live site, navigating from any page to another seems to log an error to the web console stating that an ad is trying to be inserted into an element which already contains an ad in it.
https://github.com/sugar-cat7/vspo-portal/assets/155891765/d3d074ed-1a1e-4a52-b229-2feb6a1feee3
I expect no error to be logged, however I am unsure as to what behavior should be expected.
This error seems to be caused by the following lines in GoogleAd.tsx (specifically the push() call):
const pathname = usePathname();
useEffect(() => {
  try {
    // eslint-disable-next-line
    ((window as any).adsbygoogle = (window as any).adsbygoogle || []).push(
      {},
    );
  } catch (error) {
    console.error(error);
  }
}, [pathname]);

Because the push fails (see log), the current behavior is that the ad never changes: the ad stays the same until the user performs a hard navigation (refresh or re-open the site elsewhere).
However, the pathname dependency in useEffect suggests that the original intent may have been to switch the ad on every path change.
Which behavior is preferable as a fix for this issue? @sugar-cat7
Please provide any relevant error logs
_app-5cd6971b279c8bd5.js?__WB_REVISION__=5cd6971b279c8bd5:116 TagError: adsbygoogle.push() error: All 'ins' elements in the DOM with class=adsbygoogle already have ads in them.
    at Qp (adsbygoogle.js?client=ca-pub-7433484160229921:221:210)
    at Fp (adsbygoogle.js?client=ca-pub-7433484160229921:217:450)
    at Bp.e.client (adsbygoogle.js?client=ca-pub-7433484160229921:211:43)
    at Ae.ea (adsbygoogle.js?client=ca-pub-7433484160229921:53:239)
    at bj (adsbygoogle.js?client=ca-pub-7433484160229921:87:19)
    at Bp (adsbygoogle.js?client=ca-pub-7433484160229921:211:31)
    at Object.push (adsbygoogle.js?client=ca-pub-7433484160229921:228:150)
    at _app-5cd6971b279c8bd5.js?__WB_REVISION__=5cd6971b279c8bd5:116:3328
    at uU (framework-fda0a023b274c574.js?__WB_REVISION__=fda0a023b274c574:9:84105)
    at oV (framework-fda0a023b274c574.js?__WB_REVISION__=fda0a023b274c574:9:113151)

Thank you.
As you mentioned, we were trying to change the advertisements for each path, but currently, the ads are not being purged appropriately, and it seems that reinsertion is not possible.
If possible, I would like to be able to change the advertisements for each page.(However, if this causes the advertisement scripts to reload and significantly increases the page transition time, I would like to avoid it.)


How can I change cache_root?

I'm trying to evaluate blip-2 on mscoco dataset.
functions in lavis.common.utils.py are written to use cache memory. but,I can't use cache memory because my working space is on GPU server. so i want to change cache_root. working space starts with /home/work/ so I changed  env.cache_root in lavis/configs/default.yaml to /home/work/LAVIS/ . but it still doesnt work.
I could get below error
 work@main1[X0KjpOeq-session]:~/LAVIS$ cd lavis/datasets/download_scripts/ && python download_coco.py
WARNING:root:Pytorch pre-release version 2.2.0a0+81ea7a4 - assuming intent to test it
Downloading http://images.cocodataset.org/zips/train2014.zip to train
Downloading http://images.cocodataset.org/zips/train2014.zip to /export/home/.cache/lavis/coco/download/train2014.zip
Failed to download or extracting datasets. Aborting.

Is there any solution to change "/export/home/.cache/lavis/coco/download/train2014.zip" to "/home/work/LAVIS/lavis/coco/download/train2014.zip"??
Even if the path is forcibly changed, another error occurs at evaluate.py afterwards.

hi, I have the same problem, could you tell me how you change the cache_root?

hi, you can change it from this directory:
lavis/configs/default.yaml