[BUG] slow compilation by using val in a local block for the same variable name

Describe the bug
We have a gradle, spring, java build and use lombok in our test and main code.
We run into a compilation performance issue with using val.
We introduced the following test method and the compilation takes now 10 seconds longer
Slow to compile:
    @SneakyThrows
    @Test
    void testImport() {
        {
            val user = ValueStore.user();
            user.setEmail("");
            user.setActive(true);
            userRepository.save(user);
        }

        try (val pkg = OPCPackage.open(TestClass.class.getResourceAsStream("/file.xlsx"))) {
            try (val wb = new XSSFWorkbook(pkg)) {
                val sheet = wb.getSheetAt(1);

                val connection = DriverManager.getConnection(url, username, password);
                val jdbcConnection = new JdbcConnection(connection);
                val mysqlDatabase = new MySQLDatabase();
                mysqlDatabase.setConnection(jdbcConnection);

                val consumer = new Consumer(mysqlDatabase);
                consumer.accept(sheet.getRow(0));
                consumer.accept(sheet.getRow(1));
                consumer.accept(sheet.getRow(2));

                mysqlDatabase.commit();
                mysqlDatabase.close();

                Assertions.assertThat(consumer.getUsersCreated().intValue()).isEqualTo(1);
                Assertions.assertThat(consumer.getUsersUpdated().intValue()).isEqualTo(1);
            }
        }

        {
            val user = userRepository.findByEmail("a");
            Assertions.assertThat(user.getFirstname()).isEqualTo("A");
            Assertions.assertThat(user.getLastname()).isEqualTo("C");
            Assertions.assertThat(user.getEmail()).isEqualTo("a");
            Assertions.assertThat(user.getEmail2()).isNull();
            Assertions.assertThat(user.getEmail3()).isNull();
            Assertions.assertThat(user.getActive()).isFalse();
            Assertions.assertThat(userRepository.getEmployeeId("a")).isEqualTo(0);
        }

        {
            val user = userRepository.findByEmail("b");
            Assertions.assertThat(user.getFirstname()).isNotEqualTo("A");
            Assertions.assertThat(user.getLastname()).isNotEqualTo("G");
            Assertions.assertThat(user.getEmail()).isEqualTo("b");
            Assertions.assertThat(user.getEmail2()).isNull();
            Assertions.assertThat(user.getEmail3()).isNull();
            Assertions.assertThat(user.getActive()).isTrue();
            Assertions.assertThat(userRepository.getEmployeeId("b")).isEqualTo(0);
        }

    }

When the method was changed to replace val user with final User the compilation is again at the speed as without the method.
Fast to compile:
    @SneakyThrows
    @Test
    void testImport() {
        {
            final User user = ValueStore.user();
            user.setEmail("");
            user.setActive(true);
            userRepository.save(user);
        }

        try (val pkg = OPCPackage.open(TestClass.class.getResourceAsStream("/file.xlsx"))) {
            try (val wb = new XSSFWorkbook(pkg)) {
                val sheet = wb.getSheetAt(1);

                val connection = DriverManager.getConnection(url, username, password);
                val jdbcConnection = new JdbcConnection(connection);
                val mysqlDatabase = new MySQLDatabase();
                mysqlDatabase.setConnection(jdbcConnection);

                val consumer = new Consumer(mysqlDatabase);
                consumer.accept(sheet.getRow(0));
                consumer.accept(sheet.getRow(1));
                consumer.accept(sheet.getRow(2));

                mysqlDatabase.commit();
                mysqlDatabase.close();

                Assertions.assertThat(consumer.getUsersCreated().intValue()).isEqualTo(1);
                Assertions.assertThat(consumer.getUsersUpdated().intValue()).isEqualTo(1);
            }
        }

        {
            final User user = userRepository.findByEmail("a");
            Assertions.assertThat(user.getFirstname()).isEqualTo("A");
            Assertions.assertThat(user.getLastname()).isEqualTo("C");
            Assertions.assertThat(user.getEmail()).isEqualTo("a");
            Assertions.assertThat(user.getEmail2()).isNull();
            Assertions.assertThat(user.getEmail3()).isNull();
            Assertions.assertThat(user.getActive()).isFalse();
            Assertions.assertThat(userRepository.getEmployeeId("a")).isEqualTo(0);
        }

        {
            final User user = userRepository.findByEmail("b");
            Assertions.assertThat(user.getFirstname()).isNotEqualTo("A");
            Assertions.assertThat(user.getLastname()).isNotEqualTo("G");
            Assertions.assertThat(user.getEmail()).isEqualTo("b");
            Assertions.assertThat(user.getEmail2()).isNull();
            Assertions.assertThat(user.getEmail3()).isNull();
            Assertions.assertThat(user.getActive()).isTrue();
            Assertions.assertThat(userRepository.getEmployeeId("b")).isEqualTo(0);
        }

    }

Replacing the other val constructs in this method seems to have no effect. Only the use of val user seems to increase the compile time.
In other methods with much more of such val constructs for the same variable name, we see compilation increases by more than two minutes.
The whole compilation takes from 10 minutes on a fast machine to 20 minutes on a sower machine.
By removing some of these val constructs we could reduce the compile time by about 5 minutes and it seems we can reduce it further.
We would like to use val all over the place but with this performance breakdown, we have to replace val.
To Reproduce
For now, we don't have a simple project to share that reproduces this behaviour.
Expected behavior
The use of val should not slow down the compilation so much, because it is one of the most used annotations in our project.
Version info (please complete the following information):

Lombok version: 1.18.16
Platform gradle 4.7.1, java: 11.0.9 (Eclipse OpenJ9 openj9-0.23.0), os: linux

Additional context
We would like to help to identify the issue.
Is there a way to profile the execution of lombok during compilation?
Are there other ways to identify what slows down the usage of val in this context.

Seems to be similar to #2131

Well, sounds like a more or less self  contained test case so somebody can profile this properly. Thanks, @mschaaf

a simplified flamegraph of the slowed down compilation:
flames.svg.gz

a raw flamegraph of the slowed down compilation:
flames.svg.gz

There are millions of InapplicableMethodExceptions and FunctionDescriptorLookupError exceptions thrown during resolution:
com.sun.tools.javac.code.Types$DescriptorCache.findDescriptorInternal(Symbol$TypeSymbol, Scope$CompoundScope) Types.java:735
com.sun.tools.javac.comp.Attr.attribStat(JCTree, Env) Attr.java:724
lombok.javac.JavacResolution.attrib(JCTree, Env) JavacResolution.java:235
lombok.javac.JavacResolution.memberEnterAndAttribute(JCTree, Env, Context) JavacResolution.java:203
lombok.javac.JavacResolution.resolveMethodMember(JavacNode) JavacResolution.java:151
lombok.javac.handlers.HandleVal.visitLocal(JavacNode, JCTree$JCVariableDecl) HandleVal.java:133 3367800
lombok.javac.JavacNode.traverse(JavacASTVisitor) JavacNode.java:120
...

millions? Oof. val is a tricky beast. This is a bug and we should fix it, but it feels like it's not an easy fix.
Is your team on jdk11+? I wonder if we should detect java version and define val behaviour as just turning itself into final var if the host platform AND the -source option (which I think we can figure out, though that'll require some extra code to the framework layer) allow it (so, JDK10+).
One problem is that final var and lombok.val are almost, but not quite, equivalent:

var allows you to have unwritable types, such as LUBs (var x = list.get(0); where list boils down to List<Foobar & Serializable> - is legal, and makes x be of type Foobar & Serializable, even though you can't actually write that in a java file. All methods of both Foobar and Serializable are invokable. An even easier test; var x = new Object() { void foo() {} }; x.foo(); is legal, but there's nothing you can write for var, other than var, to make that work. val x = new Object() { void foo() {} }; x.foo(); does not work, because according to the rules of val, the best 'writable' type is Object, which has no foo method.
However, this is legal: lombok.val x = 10, y = "Hello"; whereas var disallows that comma entirely. Actually, it looks like val is broken in this regard.

The primary issue is that you write code that works if compiled on JDK11 with -source 10 or higher, and breaks if you don't, but not with an error that states: "Hey, you are using a feature that is not supported at this source level".
That's a cost, but probably worth paying; even if we make val a lot faster, it remains a bit of a hairy, resolution-based feature, and replacing it with var is much simpler. Unfortunately, this may not be as simple as I'm making it out to be, because javac "unrolls" a var quite early in the process last I checked, it's possible lombok runs 'too late'. But, before I investigate if we can do that... good idea, or no? If it can be done at all it's probably a much, much faster path to avoiding the performance drain than endeavouring to fix the problem properly.

We are now at java 15 and at the time of reporting, we were on java 11.

We are now at java 15 and at the time of reporting, we were on java 11.

I think I can conclude from this you'd prefer the much quicker fix of turning val into final var? (potentially quicker - not 100% sure we can do this, but if we can, it'll probably be easy to implement)

Yes, I prefer a quick fix because it would allow us to continue without making an exception in our code for val until it is fixed.
I can test Lombok versions with a potential fix if necessary.

I managed to reproduce the issue and simplified the test case:
import org.assertj.core.api.Assertions;
import lombok.val;

class ValMissingImport {
	public void test() {
		val obj = 1;
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
	}
}

Every additional call of Assertions.assertThat(obj); increases compilation time by ~2 seconds. Resolving the type of obj is no problem but I guess that if fails trying to resolve ___Lombok_VAL_Attrib__ while trying to figure out which overloaded assertThat is the right one.
Simply replacing lombok.val with final var seems to be the easiest solution. To do that we just have to set vartype to null. Unfortunately this delomboks to final var and breaks all var/val related tests.

I managed to reproduce the issue and simplified the test case:
import org.assertj.core.api.Assertions;
import lombok.val;

class ValMissingImport {
	public void test() {
		val obj = 1;
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
		Assertions.assertThat(obj);
	}
}

Every additional call of Assertions.assertThat(obj); increases compilation time by ~2 seconds. Resolving the type of obj is no problem but I guess that if fails trying to resolve ___Lombok_VAL_Attrib__ while trying to figure out which overloaded assertThat is the right one.
Simply replacing lombok.val with final var seems to be the easiest solution. To do that we just have to set vartype to null. Unfortunately this delomboks to final var and breaks all var/val related tests.

@Rawi01 could you please show me what code I need to change to achieve this or create a pull request with the changes?
I would like to build a version to speed up our compilation time.

@mschaaf Pushed the test branch and also uploaded a pre-built version for your tests.

@Rawi01 Thanks for sharing the code and the pre-built version. I included it in our project and the test folder compilation is now down to 5s from several minutes. Thanks a lot.

I think we're also affected by this but we're still on java 8 (corretto). Only tests seem to be affected (20s vs 2m30 execution time). Would be nice to have a fix for this :)

Is there a timeline for a release with this fix?

@otbe This is the only report for Java 8, can you double check that you really use the Java 8 compiler?
@mschaaf There are some minor incompatibilities between val and final var and my test branch was simply a proof of concept. I just tried if the replacement is possible in eclipse too and it seems to work so if @rzwitserloot approves that concept I can adjust the test cases and create a PR.

Hi @Rawi01,
we are having same issue (integration test running very slow with val/var) in java 8.

@coffeemoney Runtime or compilation time? Lombok is gone at runtime so there should be no slow down compared to normal non-lombok code. Does that mean that it takes 131 minutes to compile your test? :fearful: I'm also curious how you measured that time difference :smile:

Yes @Rawi01 we're using java8 compiler. Replacing lomboks val by explicit types in tests reduces compilation time by 2minutes (2m30s vs 20s). Non test code does not seem to be affected.

@otbe Can you share a test case that helps me to reproduce the issue? Otherwise I can only guess what the problem might be with Java 8.

@otbe I pushed a new branch and also uploaded a pre-built version, can you try if that works properly and if it reduces the compilation time?

Hi @Rawi01
Sorry for my late response. I tested your version (just copied over the lombok.jar) but unfortunately the compiler complains about the usage of val
 Cannot use 'val' here because initializer expression does not have a representable type: Type cannot be resolved

Meeh, thats sad... Seems like the hacky solution I added can not handle all cases... Can you share one of the classes that fails to compile?

Is there a chance to get the fix for Java >11 in the main code? We would like to avoid maintaining our own special copy of lombok.

Just to provide some context of how dramatic the impact of this bug is, by replacing ca. 200 val references with their var counterparts in ca. 70 Java files, I was able to reduce the build-time of a Java 11 project from 2m 30s to 12s. Latest Lombok version.
We are using Gradle 7 and compile with the latest OpenJDK 11. The bug affected both compilation of main and test code, i.e. speedup for both was comparable. Until this issue is fixed, I can't recommend using val for any sizeable project.
I see there have been no comments since May 28th. Before, there was some discussion of simply replacing val with final var. Did it turn out that this is not technically possible and what is the way forward on this bug?
Thanks

If I remeber correctly I almost finished the missing eclipse part and the test cases. I will try to create a PR this week for the val to final var replacement.


Device screenshots are not captured on android emulators in pipeline runners

What happened?
In MacOS pipeline runners detox device screenshots come out blank/transparent when running on Android emulator.
What was the expected behaviour?
Expected to see android device screen captured in the screenshots when run in the pipeline
Was it tested on latest Detox?

[X] I have tested this issue on the latest Detox release and it still reproduces.

Did your test throw out a timeout?

[x] I have followed the instructions under Identifying which synchronization mechanism causes us to wait too much.

Help us reproduce this issue!
Below is a link to a public repository with GitHub Actions runner set up
https://github.com/DaveM80/rn-detox-poc
In what environment did this happen?
Detox version: 19.9.1
React Native version: 0.69.4
Node version: 14.x
Device model: Pixel
Android version: 28, 30
Test-runner (select one): jest-circus
Detox logs
Logs appeared to exceed allowed character size, please find attached
detox_pid_24998.log
Device logs
Logs appeared to exceed allowed character size, please find attached
emulator-5554 2022-09-15 10-18-41Z.startup.log
More data, please!
detox-artifacts.zip

Issue persists on Detox 19.12.1

Any update on this?

Bump

Hmm, makes sense to look since there is a repo provided.

@DaveM80 is this still applicable? If so, consider this:
By going over the logs I've noticed you use Detox over an prelaunched emulator. Would you be able to try out taking an emulator screenshot manually? You can use these resources (or any other ones available online) - adb-screenshots1 adb-screenshot2. In any case, if needed, I will reopen the issue.


fix(style): reduce eye-killing red color, remove redundant css unit

More easy on the eye red color && remove redundant css unit.

@lior-a You can overwrite the style using the style property. I see no need to change the defaults.


Write README

Write a proper README for the project. At least an overview, "screenshot" and how to use it. Also development tips would be nice.

Written


Investigate SFTP for backups

Investigate how much work it would require to support SFTP (FTP over SSH) for backup purposes. If reasonable, we could perhaps support it.

Comment from @zaibon that started this issue:

SFTP will give us issue cause then you need to authorize the key of the node that export the vdisk on the FTP server of the client. This become even more complex when want to import between 2 environment. We didn't find an easy way to solve this key distribution problem. So FTP with username/password is good enough for now.


Why Notification class is sealed?

Is there a reasonable design requirement for the Notification.cs class to be sealed?
I ask this because I am using Flunt in a project that I need to have my own implementation.
Is there a problem with that?

Great question! When I designed it, I wanted to standardize the way notification outputs were shown, but theres a downside on it, which is that you cant extend Notification class.
On version 2 I`ll remove sealed modifier from Notification class.


Github Releases

Github Releases have a size limit 2 GB. Current AlpsWC file is 7.2 GB (2.3 W + 5 C) so it will need 4 pieces.
It's also possible to distribute the slopes in smaller strips of 2 TMS zoom 9 tile, eg
for AlpsW:
1-Aix-Tende-Gap
3-Gap-Huez-Chambéry
5-Chambéry-Cluses-Lausanne
for AlpsC:
1-Zermatt-Zurich-Como
2-Como-StMoritz-Pfunds
3-Pfunds-Innsbruck-Bruneck

done, see readme and releases


[DPE-4345] Disable pgBackRest service initialisation

Issue
The pgBackRest TLS service is enabled in the Snap, which makes it start automatically on boot in the charm, creating some noise in the system logs, like the following (from https://github.com/canonical/postgresql-operator/issues/468):
charmed-postgresql.pgbackrest-service[7546]: ERROR: [037]: server command requires option: tls-server-auth

Solution
Disable the service initialisation in the snap.
Also, update the snap version to 14.12 (because that's the PostgreSQL version we have in the repositories now) and fix the name of the plpython3 package to match the new PostgreSQL version.
Services in the charm after this fix (charmed-postgresql.prometheus-postgres-exporter needs to be disabled in the charm code, but this will probably be done after we add some logic to handle its start after COS is related to the PG charm):
ubuntu@juju-337094-0:~$ sudo snap services charmed-postgresql
Service                                          Startup   Current   Notes
charmed-postgresql.patroni                       disabled  active    -
charmed-postgresql.pgbackrest-exporter           disabled  inactive  -
charmed-postgresql.pgbackrest-service            disabled  inactive  -
charmed-postgresql.prometheus-postgres-exporter  enabled  inactive  -

We will need to bump the Postgresql version in the rock as well once we publish the snap.


chore: migrate to svelte 5

In a new PR I can migrate Rome Tools to Biome

In a new PR I can migrate Rome Tools to Biome

I think I would investigate alternatives to rome, I saw dprint which is pretty fast but Im not 100% sure if it supports Svelte Syntax.

Okey!


Can use on redmine version 3.2.3 ?

Can use on redmine version 3.2.3 ?

Hi @run26kimo ,
Yes, you can use it with 3.x redmine versions! 😉


Keep the Ruby runner, but run the checks in JS via a browser

We might use selenium, or phantom as the bridge from Ruby to JS.
Keep it thin, push the responsibility for reading config etc into JavaScript.
We can abandon the Ruby checks and linter.

Fixed in #72


WIP: fix: events from the background were never captured because they were hidden behind the webgl canvas

Replaces #860
To both catch events on the background and to have the background color/style visible behind the axes, I had to add a similar rectangle in the foreground figure that is fully transparent.

I tested example notebooks and they all work fine. I noticed that the missing data cells in market map are still black. I think this was fixed by @martinRenou. I'll file a separate issue for this


LDAP config

It would be appreciated to add ldapSettings and ldapGroupSettings to one of the resources.

What is the status on this? We can see that the OIDC authentication stuff is there, but without groups, that makes permissions a nightmare. We do not want to have to manage/create all the groups locally in Artifactory, that is why we have tools like LDAP :)

Working on this LDAP config support. Will update this thread soon.

@pbecotte @TJM LDAP support is released as part of v2.9.0
We are looking forward to your feedback!


Bad Access Error on listen thread when pinging multiple IPs

Hello again,
I'm trying to see if this library is capable of pinging multiple IP's. What I'm doing is basically making it ping an entire range of IPs. It seems possible, but occasionally I get this EXC_BAD_ACCESS error on this line of code that lives in the GBPing.m in the listenOnce method:
GBPingSummary *pingSummary = [(GBPingSummary *)self.pendingPings[key] copy];

I'm setting it up like this
GBPing *pinger;
    pinger = [[GBPing alloc] init];
    pinger.host = ipAddress;
    pinger.delegate = self;
    pinger.timeout = 1.0;
    pinger.pingPeriod = 0.9;

    [pinger setupWithBlock:^(BOOL success, NSError *error) { //necessary to resolve hostname
        if (success) {
            //start pinging
            [pinger startPinging];

            //stop it after 5 seconds
            [NSTimer scheduledTimerWithTimeInterval:5 repeats:NO withBlock:^{

                [pinger stop];
            }];
        }
        else {
            NSLog(@"failed to start");
        }
    }];

and pulling in the IP addresses like this - 5 at a time in 3 second chunks
-(void)pingIPRange{
    dispatch_async(backgroundQueue, ^{
        for (int i = hostCount; i < hostCount + 5; i++) {
            NSString *ip = [NSString<EMAIL_ADDRESS>i];
            [self pingIPRangeForBroadcastIP:nil withIP:ip];
        }
        [self restartTimer];
    });
}

and then doing this in the reply delegate to kick off the next ping
- (void)restartTimer{
    hostCount += 5;
    if (hostCount > 254){
        hostCount = 101;
    }
    dispatch_async(dispatch_get_main_queue(), ^{
        [timer invalidate];
        timer = nil;
        timer = [NSTimer scheduledTimerWithTimeInterval:3.0
                                                 target:self
                                               selector:@selector(pingIPRange)
                                               userInfo:nil
                                                repeats:YES];
    });
}

starting the host count at 101. Apologies for my ignorance. Just want to see if this is possible at all and if so what the proper way might be to set it up. Thanks!

I'm having this issue as well, but haven't found out why it's happening yet

Same here. It is very difficult to consistently reproduce. I have a feeling it has to do with the fact that pendingPings been accessed and mutated in different threads. Maybe wrapping them in @synchronized could help?

Can you see if 1.3.1 still exhibits this behaviour?

So far looks good. Thanks for looking into this.

1.3.3 still has this issue;
Crashed: listenThread
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000000
0 CoreFoundation -[__NSDictionaryM objectForKey:] + 229
1 GBPing.m line 382 -[GBPing listenOnce]
2 GBPing.m line 346 -[GBPing listenLoop]

This is indeed still an issue in 1.3.3.
Crashed: listenThread
EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x0000000000000000
Any help getting this cleared up would be amazing and greatly appreciated!

Same issue here
EXC_BAD_ACCESS (code=1, address=0x0)


Link to "Developer-Guide.md" missing in root README.md

Description of problem
See $SUBJECT.

It's actually not missing, but it should be added in the Developer Guides section

Never mind, I did not realize it's linked in a sub section....


python client inout args error

error while generate 'client.py' when the arg of interface is inout.
for _i0 in arg.value: is written to for _i0 in arg by mistake.

Thank you, @zuzy , will be evaluated within #100


Mobile device viewing issues for 0.97 or greater

Are you requesting a feature, reporting a bug or ask a question?
Bug
What is the current behavior?
Broken on Mobile devices
What is the expected behavior?
Proper layout on smaller devices. Worked before I requested Bootstrap 4.0 updates (oops, sorry)
How would you reproduce the current behavior (if this is a bug)?
Look at any of the 0.97 or newer surveys on a small device
Provide the test code and the tested page URL (if applicable)
Tested page URL: personassessment.com/BISBAS.html or personassessment.com/RSSM
Beautiful on desktop. Terrible on mobile.
Test code
your_code_here

Specify your

browser: Safari for iOS, Chrome for iOS
browser version: Current and up to date
surveyjs platform (angular or react or jquery or knockout or vue): jquery
surveyjs version: 0.98.3

@alzulas Thank you for the report. We'll fix it.

We've fixed it and it will be in the next release. As a workawound you can use the following code:
  var myCss = {
    radiogroup: {
      itemControl: "",
      controlLabel: ""
    },
    checkbox: {
      itemControl: "",
      controlLabel: ""
    }
  };

...

  $("#surveyElement").Survey({
    model: survey,
    css: myCss
  });

you can see it in action at the https://surveyjs.io/Examples/Library/?id=survey-customcss&platform=jQuery


Recommend latest version of olafurpg/setup-gpg

Using v2 leads to the following warning, which is fixed in v3:
The `add-path` command is deprecated and will be disabled on November 16th. Please upgrade to using Environment Files.
For more information see: https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/

@fthomas I think you need to update tests and ci like here: https://github.com/djspiewak/sbt-github-actions/pull/26

@ahjohannessen This is a documentation-only change and a follow-up to #18.

@fthomas Ah sorry, did not notice that :)

Thank you!


Drop ruby 2.0 from travis

It is no longer supported.

I kept its tests running, but marked it as a failable test.


[GLUTEN-5215][CH]stable precision in statistical aggregation functions

use varSampStable,varPopStable ... to replace varSamp, varPop ...
use fixed nullable property for corr like aggregation's input
convert Infinite to Null to keep compatiable with Spark

What changes were proposed in this pull request?
Fixes: #5215
How was this patch tested?
tested by UT

Is there any chance to modify the implementation in CH ? It will bring additional costs to add aifInfinite at the end.
Or could you give some performance test result to know how much is the cost

Find that spark also return Infinity in some cases, so convert Infinity to null does not work.
spark-sql --master local[4] --conf  spark.sql.shuffle.partitions=3
drop table if exists example_table1;
CREATE TABLE example_table1(id int, value double) USING parquet;
INSERT INTO example_table1 VALUES
(1, 4.9E-322),
(2, 1.7976931348623157E308),
(3, 1.7976931348623157E308);
SELECT var_samp(value) FROM example_table1;

the result will be Infinity., while return NaN for the following:
spark-sql --master local[2]

Nullable property issue only affect stable statistical aggregation functions, so no need to change for now.


Add input validation core service artifact

Depends on https://github.com/wso2/carbon-identity-framework/pull/4311

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/3485824357

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/3485824357
Status: success


Use Depot to build docker images

Use Depot to build Docker images, rather than the local Docker running on the VMHost.
Flow for building agent image:

build task image on Depot and save it to the Depot ephemeral registry, using the depot build CLI command. This writes json metadata to the file passed as --metadata-file, including the ID of the build on Depot.
read the metadata file and parse out the build ID and save it to DB
when building agent image, get build ID of task image from DB
pass the path to the task image on the Depot registry to the agent Dockerfile as TASK_IMAGE, so that it can be used as the base image

Watch out:

.env changes: We will need to add DEPOT_TOKEN and DEPOT_PROJECT_ID to the prod .env
We will need to install depot on the prod VMHost

Testing:

covered by automated tests
manual test instructions:
regression test (added | in future PR | infeasible)

re supporting it either way, yeah reasonable, that would maybe also solve my current problem of it not working in CI, although I still want to see if I can resolve that and get any tests working for it

Tested this using the staging VM host and it worked


progress reporting often prints multiple lines

I'm getting a warning message in some of our projects that No handlers could be found for logger: "x.tcga_data". I wonder if this is related to the problems printing progress using tqdm?

In the above example, the problem was resolved by my adding the following two lines before running the second example above:
import logging
logging.basicConfig()

In that case, the function used cohorts.utils.get_logger to initialize the logger & so was able to skip basic configuration. We should probably be clear about the utility of get_logger to minimize this risk.


Pp 2672 Check valid  and handle return url

Update RequestValidations to check whether the return URL is a valid url
Make return_url non compulsory
Add handling of return url. When return url is not present (prototype case) then we add a pre-defined return url

I'd given up on powermock comments, although I disagree to some of the responses. Given its only a test dependency.


Netrw integration

Hi, thanks for the plugin!
Is it possible to show netrw buffer too?
Currently its not showing and surprise me when I do :bp the buffer switch to netrw buffer, not the buffer on tab list.
Thanks.

Netrw is problematic because each directory browser uses two buffers – the listed one you navigate to, which is empty, and then another unlisted buffer, where the directory contents are actually rendered. When you try to switch to the listed buffer it catches you and switches to the unlisted one instead. It’s… weird. Because of reasons – see #25 and #31 for details.
Given that this is the third issue about Netrw support (maybe no surprise since it ships with Vim), I’m now thinking I ought that if I can find a hack to support it anyway, I ought to. I’ll see if I can figure something out.

Glad you enjoy it ☹
Netrw is problematic because each directory browser uses two buffers – the listed one you navigate to, which is empty, and then another unlisted buffer, where the directory contents are actually rendered. When you try to switch to the listed buffer it catches you and switches to the unlisted one instead. It’s… weird. Because of reasons – see #25 and #31 for details.
Given that this is the third issue about Netrw support (maybe no surprise since it ships with Vim), I’m now thinking I ought that if I can find a hack to support it anyway, I ought to. I’ll see if I can figure something out.

Glad you enjoy it 😊
Netrw is problematic because each directory browser uses two buffers – the listed one you navigate to, which is empty, and then another unlisted buffer, where the directory contents are actually rendered. When you try to switch to the listed buffer it catches you and switches to the unlisted one instead. It’s… weird. Because of reasons – see #25 and #31 for details.
Given that this is the third issue about Netrw support (maybe no surprise since it ships with Vim), I’m now thinking I ought that if I can find a hack to support it anyway, I ought to. I’ll see if I can figure something out.

(Sorry, that wow the wrong smiley the first time around 😧)

FWIW @ap's solution in https://github.com/ap/vim-buftabline/issues/25#issuecomment-255796784 works great, you just add:
Plug 'ap/vim-readdir' " Assuming you use vim-plug.

let g:loaded_netrw = 1
let g:loaded_netrwPlugin = 1 " Don't use the built-in file browser (use vim-readdir instead).

And you get a (IMO) much nicer file browser, o and t to open files is everything I've needed so far.
The one downside is that it breaks gx to open URLs in the browser, so you'd need to use another plugin that provides that functionality (or write a little function).


Impossibel to build if you use anything other than Fastify vite.

Prerequisites

[X] I have written a descriptive issue title
[X] I have searched existing issues to ensure the bug has not already been reported

Fastify version
Latest
Plugin version
Latest
Node.js version
20
Operating system
macOS
Operating system version (i.e. 20.04, 11.3, 10)
Sonoma
Description
I use a src/dist build approach and want my files to live in src/routes/client. It works fine in development and I can build it however needed but as the outDir is not configurable it fails when starting due to this if statement in production.js
`  const clientDist = config.spa
? resolve(config.bundle.dir)
: resolve(config.bundle.dir, 'client')
if (!exists(clientDist)) {
throw new Error('No client distribution bundle found.')
}
const serverDist = resolve(config.bundle.dir, 'server')
if (!config.spa && !exists(serverDist)) {
throw new Error('No server distribution bundle found.')
}`
When I try setting the resolve to  resolve(config.bundle.dir) for both the server and the client dist it passes this but then somehow finds a duplicate in the root path in the fastify static plugin
rootPath [   '/dist/client/assets',   '/dist/client/assets' ]
Its extremly difficult to make this plugin work with anything else working along side it. Fastify autoload is also almost impossible to configure with Vite.
Link to code that reproduces the bug
No response
Expected Behavior
No response

Can you share the relevant parts of your vite.config.js and the options that you're passing to FastifyVite in your server.js file?

I've tried every possible config on the planet. This is what I have so far. Works locally, doesn't work in prod
import { join, dirname } from "path";
import { fileURLToPath } from "url";

import viteReact from "@vitejs/plugin-react";
import fastifyReact from "@fastify/react/plugin";

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

export default {
  root: join(__dirname, "src", "routes", "client"),
  build: {
    outDir: "../../../dist/client",
    emptyOutDir: true,
    ssrManifest: true,
  },
  plugins: [viteReact(), fastifyReact()],
  ssr: {
    external: ["use-sync-external-store"],
  },
};

Vite is registered in a seperate plugin file that is then consumed by Fastifys autoload
import fp from "fastify-plugin";
import { FastifyInstance } from "fastify";
import FastifyVite from "@fastify/vite";

import { join, dirname } from "path";
import { fileURLToPath } from "url";

const path = fileURLToPath(import.meta.url);
const __dirname = dirname(path);

export default fp(async (fastify: FastifyInstance, opts) => {
    await fastify.register(FastifyVite, {
      root: join(__dirname, "..", ".."),
      renderer: "@fastify/react",
      dev: process.argv.includes("--dev"),
    });
    await fastify.vite.ready();
});

My client entry sits in
src/routes/client
Server sits in src/server.ts
The output in dist currently is dist/routes/client
And the files that get created are index.html, /.vite, /assets
Build script
    "build": "rollup -c && vite build",
Rollup just handles the folder structure and the js, ts files. Doesn't copy anything else over


Make the blog title bold

hey @ashsajal1  i can help you with this

hey @ashsajal1  i can help you with this

Sure :)


Excel formatting

A request to improve the formatting of the spreadsheet

column widths should be relevant to content
dates should be formatted as dates

other suggestions? @joshxg @craigdrown

Well thank you for asking!
Right-align numbers.
The end.

Excellent! Right align was picked up by @joshxg in #39

closed with #52


Please show current branch name after the project name(folder) in the explorer

It is useful, convenient and necessary showing the current branch name after the project name (folder) that like the bash prompt string which along with the current branch name when the path is a git repository.

We already show this in the status bar. I think there are no plans to change this. However forwarding to @eamodio so he can decide if we should close this as designed


DDL generation changes due to sequence start with should be ignored.

Old:
CREATE SEQUENCE "BC_PORTAL"."BCP_APPLICATION_LOG_SEQ"  MINVALUE 1 MAXVALUE<PHONE_NUMBER>999999999999999999 INCREMENT BY 1 START WITH 254432 CACHE 20 NOORDER  NOCYCLE  NOKEEP  NOSCALE  GLOBAL;
New:
CREATE SEQUENCE "BC_PORTAL"."BCP_APPLICATION_LOG_SEQ"  MINVALUE 1 MAXVALUE<PHONE_NUMBER>999999999999999999 INCREMENT BY 1 START WITH 254712 CACHE 20 NOORDER  NOCYCLE  NOKEEP  NOSCALE  GLOBAL;

Type body "ORACLE_TOOLS"."T_SEQUENCE_DDL" has been adapted.


Properly encode STRING_AGG, NTH_VALUE in physical plan protobufs

Which issue does this PR close?

N/A
Rationale for this change

Attempting to encode physical plans with string_agg were erroring.
What changes are included in this PR?

Just adds in an extra downcast for encoding string_agg.
Are these changes tested?

Yes, added in a test for roundtripping.
Are there any user-facing changes?

Encoding physical plans with string_agg won't error now.

BTW for anyone following along, this also includes tests for https://github.com/apache/arrow-datafusion/issues/9028


Fatal Exception: java.lang.NullPointerException: Attempt to get length of null array

A user with Android 6.0 got this error:
Fatal Exception: java.lang.NullPointerException: Attempt to get length of null array
at com.devpaul.filepickerlibrary.FilePickerActivity$UpdateFilesTask.fileArray(SourceFile:649)
at com.devpaul.filepickerlibrary.FilePickerActivity$UpdateFilesTask.onPostExecute(SourceFile:608)
at android.os.AsyncTask.finish(AsyncTask.java:651)
at android.os.AsyncTask.-wrap1(AsyncTask.java)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:668)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)

Do you know any context of this issue? From the research I've done it looks like it may be because I need to request for permission to "READ_EXTERNAL_STORAGE" at run time. I'll try to fix it tonight though.

This should be fixed in the lastest release (2.1) can you confirm? I'd like to close this issue.

It looks it works now, now more crashes so far.


rdf:HTML and rdfXMLLiteral datatypes

We need proper support for rdf:HTML and rdf:XMLLiteral RDF 1.1 datatypes, see http://www.w3.org/TR/rdf11-concepts/#section-Datatypes
It might be smart to check if at least the XMLLiteral is valid XML. Might completely break the output if not. HTML is more resilient.

Closing, fusepool-uduvudu for comments, please use https://github.com/uduvudu/uduvudu.


Add ability to pass chokidar options

Add ability to pass chokidar options.

Be more specific,  please where and why?

For example usePolling is needed for watching docker attached volume (on docker for windows), and other SMB attached volumes would require the same. I think that probably other options maybe needed as well in some scenarios.
But if you wan't to abastract this layer from chokidar, well this issue maybe about adding polling option to watch.

Have you tried that one? http://fuse-box.org/page/sparky#watch
you can pass options there. watch on a bundle works differently

@nchanged it is not clear for me from docs what it is about.
I'm talking about watching sources for bundling, in such config
const fuse = FuseBox.init({
  homeDir: 'client',
  output: 'build/app.js'
})

fuse
  .dev({
    root: '.',
    port
  }, (server) => {
    server.httpServer.app.use(express.static(join(__dirname)));
    server.httpServer.app.get('*', function (req: any, res: any) {
      res.sendFile(join(__dirname, 'index.html'));
    })
  })

fuse.bundle('app.js')
  .instructions(`> app.ts`)
  .hmr()
  .watch()

fuse.run()

Sparky
Sparky is a Task-Runner like Gulp or Grunt, but what sets it apart is that it is built on top of FuseBox technology. This means that it takes benefit of the whole architecture behind, This includes an ability to use FuseBox plugins and many other things.
.watch() on bundle works differently. But with sparky you can pass anything you like there and launch a process manually
const app = fuse.bundle('app.js')
  .instructions(`> app.ts`)
  .hmr()

Sparky.task("default", [], () => {
   Sparky.watch("your glob", {/* options here*/})
     .file("*", file => {
         app.exec()
     })
})

});

@whitecolor,
if you use the approach above, you can pass whatever options to chokidar using sparky watch
the concept is simple, with  app.exec() you basically manually kick bundling, which will achieve what you want.

@nchanged why not add such ability to :
fuse.bundle('app.js')
  .instructions(`> app.ts`)
  .hmr()
  .watch("your glob", {/* options here*/})

@whitecolor because a producer can have many bundles in it. In fact run() initiates everything

because a producer can have many bundles in it. In fact run() initiates everything

And what? Not sure why I understand why you can't:
fuse.bundle('app.js')
  .instructions(`> app.ts`)
  .hmr()
 .watch() // <-- pass watch options here

@whitecolor because one chokidar instance is responsible to all the bundles in the producer. That's why

Then need to add this ability to pass this options in other place, without using sparkly, not to complicate config.
const fuse = FuseBox.init({
  homeDir: 'client',
  output: 'build/app.js'
})

or here:
fuse
  .dev({
    root: '.',
    port
  },

It can be in run() options yes.

@devmondo isn't this added now? https://github.com/fuse-box/fuse-box/pull/494

@aretecode yes, thank you for the reminder :) will close this now.


Add a price for each spool

I often buy spools at wholesale/bulk prices and then buy one or two more later at MSRP.
It would be really nice to have the filament price be my MSRP, and then be able to put in the price I paid for each spool.
This is something I would be willing to contribute to the backend if it's a feature folks want, but I'm terrible at JS so the Frontend may be out for me
P.S. Thanks for this project, it's exactly what I needed.

Yes, a price field on spools is something others have suggested as well. Definitely something worth adding!

This would definitely be appreciated.
Filament spool prices aren't always consistent. On top of that, there might be a sale or coupon or something.

Adding my interest here as I just reordered a new spool of an already in my DB existing filament for a different price. 🙂


[Bug Report] - RecyclerView wrap_content problem

When I set the recyclerView's height to wrap_content Skeleton does not show up. But On match_parent and fixed height values everything works fine

I've upgraded the lib -v to 0.7.3 but the problem still exist. any idea? Also when I try a fixed height skeleton shows up, but after calling .hideSkeleton() item's does not appear.

I used recycler_view_items of your layout and works well. Can you please provide more information about your recyclerview/adapter configuration?
<androidx.recyclerview.widget.RecyclerView
    android:id="@+id/recycler_view_items"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

So after a long review, I found that there is two issue related:

If I set height to a fixed size or match_parent and then call .loadSkeleton() the recyclerView shows skeleton. But if before hiding skeleton I update list data with adapter.submitList(data) and then hide skeleton I can't see new List but it hides skeleton and the result is an empty listView. So because I have a ViewModel that has two LiveDatas -> one for loading and one for data list and I'm observing those values, I cannot know which one observes first (I can set a delay to temporary fix the bug but that is a dirty solution).

If I set the height to wrap_content, the .loadSkeleton() function cannot show the skeleton but after adapter.submitList(data) the recyclerView updates with new set of data. I've checked your sample code and didn't realize what causing this issue. So I made a very small application that mimics this issue:
KoletonTest
You can clone it and toggle between RecyclerView height to see the issue.

@TurKurT656 Thanks for the sample project. I cloned it and fixed the second issue. Please try out 0.7.4 version.
Regarding the first issue, I couldn't reproduce it, could you edit your sample project to demonstrate the first issue, because it's difficult to figure out where problem is?

Thnaks. the second issue fixed.
I found the problem. I'm using DataBinding library to set data to the RecyclerView:
@BindingAdapter("binding:setData")
fun <T> RecyclerView.setRecyclerViewData(data: List<T>?) {
    data?.let {
         if (adapter is MyAdapter<*>)
            (adapter as MyAdapter<T>).submitList(it)
    }
}

so I think when data is on loading state the library changes RecyclerView to KoletonView and because of that the BindingAdapter function never invokes. I've updated the sample project to demonstrate the issue.

I've created a new issue (#14) related with DataBinding problem.
This issue (#9) has been solved. I'll close it. 👍
Thanks again!


lfs_ctz_extend: Assertion `head >= 2 && head <= lfs->cfg->block_count' failed.

There is the following assertion failure under massive write test:
lfs_tester: src/lfs.c:2263: lfs_ctz_extend: Assertion `head >= 2 && head <= lfs->cfg->block_count' failed.
Program received signal SIGABRT, Aborted.
0x000000000041dee7 in raise ()
(gdb) bt
#0  0x000000000041dee7 in raise ()
#1  0x000000000041e071 in abort ()
#2  0x0000000000411ddc in __assert_fail_base ()
#3  0x0000000000411e52 in __assert_fail ()
#4  0x0000000000406366 in lfs_ctz_extend (lfs=0x6cbc00 <_lfs>,
pcache=0x6cbea0 <_file_obj_pool+384>, rcache=0x6cbc00 <_lfs>, head=0, size=4096,
block=0x6cbe94 <_file_obj_pool+372>, off=0x6cbe98 <_file_obj_pool+376>) at src/lfs.c:2263
#5  0x0000000000407bba in lfs_file_write (lfs=0x6cbc00 <_lfs>,
file=0x6cbe58 <_file_obj_pool+312>, buffer=0x7fffffffe210, size=200) at src/lfs.c:2899
#6  0x000000000040e3c0 in _fs_write (pfs_context=0x6c9100 <hb_fs_context>,
pfile=0x6cbe58 <_file_obj_pool+312>, pbuf=0x7fffffffe210 "\314;", size=200,
pbw=0x7fffffffe120) at src/hb_storage.c:1179
#7  0x000000000040d69f in hb_stor_write_file (phandle=0x7fffffffe1a0,
pbuf=0x7fffffffe210 "\314;", size=200, pbw=0x7fffffffe120) at src/hb_storage.c:410
#8  0x000000000040dbd6 in hb_stor_write_buf (phandle=0x7fffffffe1a0, pbuf=0x7fffffffe210,
bytes=200) at src/hb_storage.c:612
#9  0x000000000040fac5 in hb_data_log_save_record (pLog=0x6cb6b0 <_test_logs+112>,
rec_id=7654, src_buf=0x7fffffffe210) at src/Core/hb_data_log.c:777
#10 0x000000000040feba in hb_data_log_add_record (pLog=0x6cb6b0 <_test_logs+112>,
psrc_buf=0x7fffffffe210) at src/Core/hb_data_log.c:866
#11 0x000000000040cd10 in test_data_log_huge_records () at src/data_log_test.c:632
#12 0x000000000040b524 in run_test_case (
pTestCaseName=0x49f910 "DataLog at big amount of records",
pTestCaseFunc=0x40caee <test_data_log_huge_records>) at src/data_log_test.c:75
#13 0x000000000040b625 in run_data_log_unit_test () at src/data_log_test.c:137
#14 0x0000000000400b97 in main () at src/lfs_tester.c:13
(gdb) frame 4
#4  0x0000000000406366 in lfs_ctz_extend (lfs=0x6cbc00 <_lfs>,
pcache=0x6cbea0 <_file_obj_pool+384>, rcache=0x6cbc00 <_lfs>, head=0, size=4096,
block=0x6cbe94 <_file_obj_pool+372>, off=0x6cbe98 <_file_obj_pool+376>) at src/lfs.c:2263
2263	                LFS_ASSERT(head >= 2 && head <= lfs->cfg->block_count);
(gdb) p i
$1 = 4
(gdb) p skips
$2 = 6
(gdb) p head
$3 = 0
(gdb)
There is a latest (2.1.4) version of lfs in use. There is a standalone synthetic test on top of emubd to reproduce the situation, the full source is attached:
lfs_tester_standalone.tar.gz
It needs '$ make' under linux to be built and then '$ gdb ./lfs_tester' to run.
Please help to pin down the problem.

Hi @fsulima, thanks for the reproducible test case! I haven't been able to look at it yet, but it looks like this issue may have been fixed in this branch?
https://github.com/ARMmbed/littlefs/pull/372

It is indeed! Impatiently waiting for it to be released!

My issue (which has the same symptom) is not fixed in this branch. I've merged my test code into the test-revamp branch -- https://github.com/pjsg/littlefs/tree/afl-fuzzing-revamp -- and there are two different crashes (different line numbers, but the same message) caused by the trigger files in aflresults/. The FUZZING.md explains how to build and run the test cases.


too many cloud api calls in node-update-controller

/kind bug
/kind enhancement
What happened?
There are lots of API calls in node-update-controller which creates the powervs cloud object where some fails.
In a minute, a total of ~13 calls to create a cloud object and calls GET pvm instance for checking and setting the storage affinity policy.
# oc logs ibm-powervs-block-csi-driver-controller-86f4c6459-gxn8f -c node-update-controller --previous | grep 'I0821 05:21' | wc -l
27

See the example below where a few errors are while fetching the pvm instance. The last one is while getting the powervs client object (which is fatal) and suggesting the container restart (See #441 ).
Examples:
# oc logs ibm-powervs-block-csi-driver-controller-86f4c6459-gxn8f -c node-update-controller --previous | grep -v 'StoragePoolAffinity' | grep -v 'PROVIDER-ID'
2023-08-19T02:42:36Z    INFO    controller-runtime.metrics      Metrics server is starting to listen    {"addr": ":8081"}
2023-08-19T02:42:36Z    INFO    setup   starting manager
2023-08-19T02:42:36Z    INFO    Starting server {"kind": "health probe", "addr": "[::]:8082"}
2023-08-19T02:42:36Z    INFO    Starting server {"path": "/metrics", "kind": "metrics", "addr": "[::]:8081"}
2023-08-19T02:42:36Z    INFO    Starting EventSource    {"controller": "node", "controllerGroup": "", "controllerKind": "Node", "source": "kind source: *v1.Node"}
2023-08-19T02:42:36Z    INFO    Starting Controller     {"controller": "node", "controllerGroup": "", "controllerKind": "Node"}
2023-08-19T02:42:36Z    INFO    Starting workers        {"controller": "node", "controllerGroup": "", "controllerKind": "Node", "worker count": 1}
I0819 05:54:42.543016       1 nodeupdate_controller.go:81] Unable to fetch Instance Details failed to Get PVM Instance 36776ce2-ef10-400b-be7d-c9511d00f01b :[GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}][500] pcloudPvminstancesGetInternalServerError  &{Code:0 Description:pvm-instance 36776ce2-ef10-400b-be7d-c9511d00f01b in cloud-instance f4d71e5f9bea49f9a6fdae6f38c4b2cb error: failed to get server and update cache: timed out of retrieving resource for pvmInstanceServer:lon06:f4d71e5f9bea49f9a6fdae6f38c4b2cb:36776ce2-ef10-400b-be7d-c9511d00f01b Error:internal server error Message:}
I0820 06:54:24.914454       1 nodeupdate_controller.go:81] Unable to fetch Instance Details failed to Get PVM Instance 36776ce2-ef10-400b-be7d-c9511d00f01b :[GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}][500] pcloudPvminstancesGetInternalServerError  &{Code:0 Description:pvm-instance 36776ce2-ef10-400b-be7d-c9511d00f01b in cloud-instance f4d71e5f9bea49f9a6fdae6f38c4b2cb error: failed to get server and update cache: timed out of retrieving resource for pvmInstanceServer:lon06:f4d71e5f9bea49f9a6fdae6f38c4b2cb:36776ce2-ef10-400b-be7d-c9511d00f01b Error:internal server error Message:}
I0820 17:30:31.360402       1 nodeupdate_controller.go:81] Unable to fetch Instance Details failed to Get PVM Instance 36776ce2-ef10-400b-be7d-c9511d00f01b :[GET /pcloud/v1/cloud-instances/{cloud_instance_id}/pvm-instances/{pvm_instance_id}][403] pcloudPvminstancesGetForbidden  &{Code:403 Description: Error: Message:user iam-ServiceId-c27c3ef5-8405-4dc1-9590-4440adaad19f does not have correct permissions to access crn:v1:bluemix:public:power-iaas:lon06:a/bf9f1f230466481b95a99f18739fede9:dbc67d5e-9579-49da-b1d9-fc2ec7ddc680:: with {role:user-unauthorized permissions (read:false write:false manage:false)}}
F0821 05:22:32.216618       1 powervs_node.go:69] Failed to get powervs cloud: errored while getting the Power VS service instance with ID: dbc67d5e-9579-49da-b1d9-fc2ec7ddc680, err: Get "https://resource-controller.cloud.ibm.com/v2/resource_instances/dbc67d5e-9579-49da-b1d9-fc2ec7ddc680": read tcp <IP_ADDRESS>:46226-><IP_ADDRESS>:443: read: connection reset by peer

What you expected to happen?
The node-update-controller should not have so many cloud API calls.
How to reproduce it (as minimally and precisely as possible)?
Anything else we need to know?:
Environment

Kubernetes version (use kubectl version):
Driver version: latest

/assign @yussufsh
One solution could be to add a node label as soon as we set the Storage Affinity Policy to false on the pvm instance. Subsequent reconcile calls should check if a particular node has that label. If the label is present no need to call cloud APIs.

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale

/remove-lifecycle stale


[Select] Remove "None" from Dropdown and fix "autoselect" first element.

This PR removes the None option on the Select Dropdown.

It also fix a bug I had with redux-form. When you open the Multiple Select example it'll show the first option as selected. It is not really selected, when you close the dropdown it doesn't use this value but redux-form actually think, that the 1st option is selected.

This PR also moves the label to the top so you can still read it when the dropdown is open. No clue what the Material UI specs say but it actually pretty neat. IMO.

Linked to #8875

#5186 Would be fixed as well.

@oliviertassinari
Mhh not sure why you need a Placeholder when the <InputLabel> is already doing that as you can see here on 1st and 2nd <Select>

I second that pull request. Especially because I find Multiple Select quite unintuitive as it is right now (the first element is highlighted even if it is not selected).

@Skaronator @medihack I have used a different strategy with this new commit.


Firestore collection subscription give two results instead one

Firestore collection subscription give two results instead one, when you are observing a document in the same collection

Version info

Angular: 5.2.0
Firebase: 4.10.1
AngularFire: 5.0.0-rc.6
How to reproduce these conditions
Create in firestore sample collection "my_collection" and add few documents.
If you first subscribe to one document in that collection, and after that you subscribe on collection, you will get 2 results in collection response instead only one. These two results are:
First is array with one element and that is document that you subscribing.
Second is array with all documents in that collection.
The issue is first response, I should get only one result with array of documents.
Here is code example:
this._afStore.doc(my_collection/JeYzjbiPmchzlnvgDH670yHdXfy2)
.valueChanges()
.subscribe(
result => {
console.log('result Doc', result)
})
setTimeout(() => {
  this._afStore.collection(`my_collection`)
  .valueChanges()
  .subscribe(
  result => {
    console.log('Result Collection', result)
  })
},5000)

I add setTimeOut just for simulation
Result in console.log()

Expected behavior

Actual behavior

That first firing is returning your cached value, this is expected. There are methods to control this in Firestore requests now and we are considering how best to expose in AngularFire

Closing in favor of #1490, which i'll use as exposing these options

@jamesdaniels I know this is not the place to ask AngularFire coding related stuff but I just want to know if this issue is related to my problem and if there is any workaround until you guys build an API for it. Thanks.


FIX-#5060 Fix hdk worker import for nyc-taxi-hdk example

Signed-off-by: Petr Kurapov<EMAIL_ADDRESS>
What do these changes do?

[ ] commit message follows format outlined here
[ ] passes flake8 modin/ asv_bench/benchmarks scripts/doc_checker.py
[ ] passes black --check modin/ asv_bench/benchmarks scripts/doc_checker.py
[ ] signed commit with git commit -s
[ ] Resolves #5060
[ ] tests added and passing
[ ] module layout described at docs/development/architecture.rst is up-to-date
[ ] added (Issue Number: PR title (PR Number)) and github username to release notes for next major release

Thanks all for catching this!


Archive_plus plugin not visible after upgrade

Hi, I've installed skeleton Open Publishing Space.
I've also installed plugin named archive plus instead of pre-existing archive. In order to user archive_plus plugin I've changed file named:
grav\user\themes\quark-open-publishing\templates\partials\sidebar.html.twig
from:
{% if config.plugins.archives.enabled %}

{{ 'THEME_QUARK.SIDEBAR.ARCHIVES.HEADLINE'|t }}

    {% include 'partials/archives.html.twig' with {'base_url':new_base_url} %}

{% endif %}
to
% if config.plugins.archive_plus.enabled %}

{{ 'THEME_QUARK.SIDEBAR.ARCHIVES.HEADLINE'|t }}

    {% include 'partials/archive_plus.html.twig' with {'base_url':new_base_url} %}

{% endif %}
Is correct that every  upgrade of theme "Quark Open Publishing" i need to modify the file sidebar.html.twig?
Is there a way to avoid to loss this customization when the quark open publishing is updated?
thank you very much
best regards

Hi @NandoPiz , if I understand correctly you could use an inherited theme to hold your customized Twig so it is not possibly replaced by future updates of Quark Open Publishing.
I've included an inherited theme in the Open Publishing Space called MyTheme. If you placed your modified Twig file sidebar.html.twig into the folder user/themes/mytheme/partials you will then be safe from future theme updates of this file.
You can learn more about inherited themes at https://learn.getgrav.org/themes/customization#theme-inheritance
Please let me know if the above solves your issue.

Hi, great it works. thank you very much for your help. very appreciated


[BUG] Nested builder parentage doesn't work

This kind of structure (though where each builder is in an #export method on a model of some sort, not quite this simple) is very useful for composing a document, but it currently fails like so:
  1) Error:
test_builder_inside_builder(Nokogiri::XML::TestBuilder):
NoMethodError: undefined method `parent=' for nil:NilClass
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:385:in `insert'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:377:in `method_missing'
    /Users/ben/code/nokogiri/test/xml/test_builder.rb:303:in `block (3 levels) in test_builder_inside_builder'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:293:in `initialize'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:254:in `new'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:254:in `with'
    /Users/ben/code/nokogiri/test/xml/test_builder.rb:302:in `block (2 levels) in test_builder_inside_builder'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:393:in `call'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:393:in `insert'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:377:in `method_missing'
    /Users/ben/code/nokogiri/test/xml/test_builder.rb:301:in `block in test_builder_inside_builder'
    /Users/ben/code/nokogiri/lib/nokogiri/xml/builder.rb:293:in `initialize'
    /Users/ben/code/nokogiri/test/xml/test_builder.rb:300:in `new'
    /Users/ben/code/nokogiri/test/xml/test_builder.rb:300:in `test_builder_inside_builder'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:942:in `run'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:781:in `block in _run_suite'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:774:in `map'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:774:in `_run_suite'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:764:in `block in _run_suites'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:764:in `map'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:764:in `_run_suites'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:740:in `_run_anything'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:903:in `run_tests'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:890:in `block in _run'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:889:in `each'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:889:in `_run'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:878:in `run'
    /Users/ben/.rvm/gems/ruby-2.0.0-p195/gems/minitest-2.2.2/lib/minitest/unit.rb:658:in `block in autorun'

Any help in figuring out why this is would be appreciated.

Hi @benlangfeld,
Sorry to join this thread so late. I don't completely understand the compelling use case for this PR, and I'd like your help to understand.
Nesting builders seems like a clever solution to .. .something. I'm not sure what, though. Can you explain the use case, with pros and cons compared to simply passing a builder to a method?

I wish I remembered what I needed this for, @flavorjones, but I failed to appropriately link it to an internal issue and in the nearly 3 years since it's escaped me. I almost certainly don't care any more, so this can probably be closed, and if I re-discover a reason to care then I'll ping it for re-opening.

Roger. Thanks, and apologies.


Why onLayout method is not documented?

Is this a bug report?
No
Guys, why is onLayout not documented on https://github.com/react-native-community/react-native-maps/blob/master/docs/mapview.md?
I'm not sure if this is because it's not recommendable to use, or if it's deprecated, or if you just forgot it.
BTW, it's gonna be nice to know which is the difference between onMapReady and onLayout.
Thanks!

Hey Rborn,
We reproduced a bug on expo MapView (which is supposedly a thin wrap on react-native-maps), where when we have a marker before loading happens and we try to render it after onReady it crashed on Android standalone, 1/2 the time. Here is my description of the issue.
I think this should either be documented thats something else calls fitToCoordinates or onLayout should be better documented.


Add HelmVersion to Capabilities

In Helm v2 the Capabilities included TillerVersion which would allow you to target and work with different minor versions of Helm. When Tiller went away so did the ability to detect the minor version of Helm.
The idea is to add this back as HelmVersion and available though Capabilities.
Note, I'm filing this but not expecting to add this until after v3.0.0 is released.

This would be great so that charts can support features for both helm2 & helm3 during a transition period.

Anybody mind if I attempt this?

Go ahead ! :)

Workaround to determine major Helm version (2 vs 3): {{- $isHelm2 := hasKey .Capabilities "TillerVersion" -}}

Perhaps instead of exposing the version helm could expose what are the supported hooks, so that the charts could depend on features rather than version numbers?
E.g. the chart could conditionally render a CRD if the crd-install hook is supported, otherwise the CRD present in the crds/ directory will be used whatever version got rid of that hook (i.e. helm3)

With #7005, charts can use .Capabilities.HelmVersion.Version to determine which version of Helm is rendering the chart.
For those who need their charts to remain compatible with Helm 2, The workaround @seaneagan should work as well.

FWIW, I wasn't able to use the above workaround as the .Capabilities object is not a map[string]interface:
cat templates/deployment.yaml
{{- $isHelm2 := hasKey .Capabilities "TillerVersion" -}}
isHelm2: {{ $isHelm2 }}

$ helm3 template .
Error: template: testhelmversion/templates/deployment.yaml:1:23: executing "testhelmversion/templates/deployment.yaml" at <.Capabilities>: wrong type for value; expected map[string]interface {}; got *chartutil.Capabilities
Use --debug flag to render out invalid YAML

$ helm2 template .
Error: render error in "testhelmversion/templates/deployment.yaml": template: testhelmversion/templates/deployment.yaml:1:23: executing "testhelmversion/templates/deployment.yaml" at <.Capabilities>: wrong type for value; expected map[string]interface {}; got *chartutil.Capabilities

but after playing around, I was able to do so with {{- $isHelm2 := regexMatch "\nTillerVersion:\n" (.Capabilities | toYaml) }} as follows:
$ cat templates/deployment.yaml
{{- $isHelm2 := regexMatch "\nTillerVersion:\n" (.Capabilities | toYaml) }}
isHelm2: {{ $isHelm2 }}

$ helm3 template .
---
# Source: testhelmversion/templates/deployment.yaml
isHelm2: false

$ helm2 template .
---
# Source: testhelmversion/templates/deployment.yaml
isHelm2: true


vWii Virtual Console (VC) is exclusive to sysNAND (doesn't work in redNAND)

Just something to add, vWii doesn't work in redNAND, but it does work on sysNAND, so vWii games installed via Brazilian Title Method cannot be used in redNAND. They must be run via CFW patched sysNAND OR by running the sysNAND sigpatches "exit toapp in HBL to work. Even vWii VC games that are legitimately bought from the eShop will not work in redNAND.
RedNAND users with haxchi on sysNAND could change their config to use the "exit to system menu" version of the sysNAND sigpatches Homebrew Launcher app (it's on WiiuBru) instead of a CFW sysNAND fw.img. Then, the redNAND fw.img can be used as normal from haxchi, and vWii VC games can still be used on sysNAND by running the sigpatches without fw.img HBL app.

Yea, you're right about this. I didn't think to mention it. When I do I'll close this issue.

Everything from the initial post has been explained.


Export settings

Hi.
is possible to export and after import all settings?
if export presets, not export internal settings.
Thanks

Hello!
No, there is no export/import option for the panel's settings if that's what you are asking about.

Yes is my question.
Viewed in code that settings are saved
but if i close chart  and recreate it, i can't use same settings.
m_FileName = "AP_" + IntegerToString(ChartID()) + ".txt";
it's possibile to make variable filename as input paramater, and if empty to set a default value?
Thus it will be possible to easily save and re-import the settings.
Thanks!

OK, I might consider adding this in the next version.

ok. if you would, i have managed it and other two features (DelayClosePlatform and CloseAllOtherChartsFiltered) on my fork.

Added in 1.10.


[Akinator] Error

Bug description:
Wen running Akinator, the bot stops responding at a random time, appears as typing and then returns with
Error in command 'akinator start'. Check your console or logs for details.
Steps to reproduce:
Been random so far so unsure at the moment. If i figure it out, I'll update this message.
Expected Behaviour:
Bot should carry on until the end of the game
Versions and infos:

Red Version: 3.4.9
Discord.py Version: 1.7.1

Logs/Traceback:
Exception in command 'akinator start'
Traceback (most recent call last):
  File "/home/pi/redenv/lib/python3.8/site-packages/discord/ext/commands/core.py", line 85, in wrapped
    ret = await coro(*args, **kwargs)
  File "/home/pi/.local/share/Red-DiscordBot/data/test/cogs/CogManager/cogs/akinatorcog/akinatorcog.py", line 99, in start
    await self.game_with(ctx, locale)
  File "/home/pi/.local/share/Red-DiscordBot/data/test/cogs/CogManager/cogs/akinatorcog/akinatorcog.py", line 129, in game_with
    question_count = await self.continuous_question(
  File "/home/pi/.local/share/Red-DiscordBot/data/test/cogs/CogManager/cogs/akinatorcog/akinatorcog.py", line 181, in continuous_question
    next_question = await akinator.answer(user_input)
  File "/home/pi/.local/share/Red-DiscordBot/data/test/cogs/Downloader/lib/akinator/async_aki/async_akinator.py", line 189, in answer
    resp = self._parse_response(await w.text())
  File "/home/pi/.local/share/Red-DiscordBot/data/test/cogs/Downloader/lib/akinator/async_aki/async_akinator.py", line 88, in _parse_response
    return json.loads(",".join(response.split("(")[1::])[:-1])
  File "/home/pi/.pyenv/versions/3.8.6/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/home/pi/.pyenv/versions/3.8.6/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/home/pi/.pyenv/versions/3.8.6/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/redenv/lib/python3.8/site-packages/discord/ext/commands/bot.py", line 939, in invoke
    await ctx.command.invoke(ctx)

  File "/home/pi/redenv/lib/python3.8/site-packages/redbot/core/commands/commands.py", line 832, in invoke
    await super().invoke(ctx)
  File "/home/pi/redenv/lib/python3.8/site-packages/discord/ext/commands/core.py", line 1348, in invoke
    await ctx.invoked_subcommand.invoke(ctx)
  File "/home/pi/redenv/lib/python3.8/site-packages/discord/ext/commands/core.py", line 863, in invoke
    await injected(*ctx.args, **ctx.kwargs)
  File "/home/pi/redenv/lib/python3.8/site-packages/discord/ext/commands/core.py", line 94, in wrapped
    raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: JSONDecodeError: Expecting value: line 1 column 1 (char 0)

This is a library issue but that still can be tried to be handled by the cog.
May I ask what was the latest input to the bot before Akinator crash?

It was just multiple games of akinator that did were working properly.

May (Or may not:tm:) be fixed in v0.8.3, I'm still letting that here since it's a somewhat dirty solution I've put.


Add dnf style progress bar

DNF has the following progress bar style:

I think it conveys a lot of relevant information and works well with parallel downloads. We should emulate it for #105 but it will require some work in indicators.

Done for the moment, still has a couple of issues but hopefully we'll sort them out.


restoring production manifest.yml

I think bluemix sets NODE_ENV=production automatically. my bad I forgot to update the app name :(

Really? That must be new.

From the apps I've just looked at, I only ever see NODE_ENV set in user-provided env variables

I used to set it but it's being set to production but bluemix after the
last update to the buildpack.
Source:
https://developer.ibm.com/bluemix/2016/02/04/node-js-buildpack-v30-updates/
On Tue, Jun 28, 2016 at 1:59 PM Nathan Friedly<EMAIL_ADDRESS>wrote:

From the apps I've just looked at, I only ever see NODE_ENV set in
user-provided env variables
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/watson-developer-cloud/visual-recognition-nodejs/pull/177#issuecomment-229130556,
or mute the thread
https://github.com/notifications/unsubscribe/AATHRdQ8bKLd9OY4a9AhhaoA5cLK4nXzks5qQWD6gaJpZM4JAWsP
.

Cool. I guess the things I checked must have had the older buildpack.


Remove support for ~/.coursier/cache cache location

Fixes https://github.com/coursier/coursier/issues/1483.
Don't know whether I want to write some kind of migration tool to help users migrate to the new location, prior to merging that.

Awesome.


posix/uart: Fixes for failure to terminate

These changes address various issues found in the POSIX platform UART
driver which lead to the process not terminating properly when the
parent dies or closes stdin/stdout. Some of the errors could even
lead to unexpected program termination.
Among the various errors corrected are:

Using assert() to terminate under normal operating conditions.
posixUartProcess() only checked s_in_fd for readability and
did not check s_out_fd for writability. It also caused data
corruption if write() ever returned less than all of the bytes
sent.
ISIG was being set on the termios flags. This can cause problems
when the serial API is used for binary data (Like when used with
the NCP app). (This requires the CLI be explicitly able to be able
to handle CTRL-C when built for POSIX)
Socket errors weren't being tracked on select().
The platform main loop would (possibly) terminate if select()
failed with EINTR, which makes it difficult to attach to the
process with a debugger.

Current coverage is 64.00% (diff: 40.00%)

Merging #568 into master will decrease coverage by 0.16%

@@             master       #568   diff @@
==========================================
  Files            88         88
  Lines         12135      12164    +29
  Methods        1680       1680
  Messages          0          0
  Branches       1416       1428    +12
==========================================
- Hits           7787       7786     -1
- Misses         3947       3965    +18
- Partials        401        413    +12

Powered by Codecov. Last update 56f3239...cc1abfb

LGTM 👍

LGTM :+1:

LGTM 👍

LGTM :+1:


add list to parameter sets docs

Add a list of the available AuthorYear parameter sets in the docs for parameter_sets. At the moment there is no obvious way of seeing what sets are available other than opening the parameter_sets file. Is there a sensible way to automate this?

Yeah this should be automated so it doesn't get out of date .It would probably be pretty easy to automate once you figure out how to make the github workflow run a script and push the result back. One for @tlestang ?

Sounds good, I'll think about it

Could you please elaborate more on this?

We currently have a number of parameters sets which are available by calling pyabmm.parameter_sets.AuthorYear (see here.  Details about these sets have been added manually to the documentation, but it would be good to automate this so that you don't have to manually update the docstring every time a new parameter set is added.

Can I work on this issue because @tlestang is already assigned to it?

I don't think he is actively working on this right now

Please confirm, if I am getting it right
If AuthorYear like this is added in the parameter_sets.py
https://github.com/pybamm-team/PyBaMM/blob/8ed813e8406bc2b272a6f2ddc5a4144ff59e6700/pybamm/parameters/parameter_sets.py#L68-L78
then I have to convert these new AuthorYear into this
https://github.com/pybamm-team/PyBaMM/blob/8ed813e8406bc2b272a6f2ddc5a4144ff59e6700/pybamm/parameters/parameter_sets.py#L29-L33 by automating them using github workflow in which a script will run and push the result back in form of a pull request

Yes, and you can use something like this
https://github.com/pybamm-team/PyBaMM/blob/8ed813e8406bc2b272a6f2ddc5a4144ff59e6700/pybamm/citations.py#L90-L94
to do the formatting of the citation

In which folder should I place the script.py?


Build Error

Yesterday running application gave error today. I need help.
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp: In member function 'AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(tm*)':
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp:67:64: error: 'strftime' was not declared in this scope
strftime (result,30,"%a, %d %b %Y %H:%M:%S %Z", last_modified);
^
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp: In member function 'AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(time_t)':
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp:73:60: error: 'gmtime' was not declared in this scope
return setLastModified((struct tm *)gmtime(&last_modified));
^
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp: In member function 'AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified()':
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp:78:25: error: 'time' was not declared in this scope
if(time(&last_modified) == 0) //time is not yet set
^
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp: In member function 'AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(time_t)':
.piolibdeps\ESPAsyncWebServer\src\WebHandlers.cpp:74:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
Compiling .pioenvs\generic\liba77\ESPAsyncWebServer\WebResponses.cpp.o
Compiling .pioenvs\generic\liba77\ESPAsyncWebServer\WebServer.cpp.o
*** [.pioenvs\generic\liba77\ESPAsyncWebServer\WebHandlers.cpp.o] Error 1
Compiling .pioenvs\generic\lib4d3\AsyncMqttClient_ID346\AsyncMqttClient.cpp.o
[ERROR] Took 19.51 seconds
[SUMMARY]
Environment relayboard  [SKIP]
Environment debug       [SKIP]
Environment generic     [ERROR]
[ERROR] Took 19.51 seconds

I have the same error building for the Generic board (for Wemos D1 Mini).  Any help much apprciated!

It must be external problem, please update PlatformIO and try again.

I have the same issue.
Here is the workaround:

Download the time.h file
Rename the downloaded file to _time.h
Place the _time.h file into the "....piolibdeps\ESPAsyncWebServer\src" directory
In the file "....piolibdeps\ESPAsyncWebServer\src\WebHandlerImpl.h",
change the line #include <time.h> to #include <_time.h>

I have had the same problem today.
copy _time.h helps. Any way to change it in the original code? thank


Post release automated changes for storage releases

Post release automated changes for azure-storage-blob

/check-enforcer reset

/check-enforcer override


Update googleappengine to 1.9.69

After making all changes to the cask:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} left no offenses.
[x] The commit message includes the cask’s name and version.

This is a note to myself (my future self...) as much as any one else: the actual download page for this cask is https://cloud.google.com/appengine/docs/standard/python/download#appengine_sdk - it is very difficult to find based on the cask's homepage url currently.


Implement the HR plan screens

HR Plan is implemented at UI level and code committed to repo over the weekend.


add rfcs/022-user-mgmt.md

Rendered

One more important topic came up here: extension needs to handle sub-transactions -- one can rollback some statements in the transactions without rolling back whole transaction.


@create-figma-plugin/build doesn't work inside a pnpm workspace

When the plugin is part of a pnpm monorepo (using workspaces), it fails to find tcm.
Reason is that in that case tcm is present only in:
<EMAIL_ADDRESS>And not in:
node_modules/.bin/
Fix:

use { cwd: __dirname } as findUp option (default is process.cwd())

Workaround:

install typed-css-modules in figma plugin so tcm binary gets installed in node_modules/.bin as well.

@gluck Can you confirm whether this issue is fixed by<EMAIL_ADDRESS>

The commit that should fix this issue is https://github.com/yuanqing/create-figma-plugin/commit/96d1025256b43d71e0709393ebedf186bc64df23

I haven't tested yet but afaict it won't fix it, this folder will only exist in cwd if the user installed it.

Got it. Just to check, is the repo set up that such that @create-figma-plugin/build is a root dependency only – ie. it is specified in ./package.json but not in ./packages/my-plugin/package.json?

The other way around.
But if you think about it, tcm being a node dependency, it should resolve it like node does, i.e. crawling folders up starting from __dirname.
Thinking about it, using require.resolve('...') (and finding the binary from there) should also work

Verified that this is fixed as of 1.8.4

Confirmed working on my side too, thx !


chore(linter): add tests no import/no-deprecated

Current dependencies on/for this PR:

#2489  👈
main

This stack of pull requests is managed by Graphite.

Merge activity

Feb 24, 4:50 AM EST: @Boshen merged this pull request with Graphite.


feat(CRA): Updated CRA to v2 and resolved resulting issues.

Followed directions at the following link: https://reactjs.org/blog/2018/10/01/create-react-app-v2.html
Resolves #322

Tested on a fresh Google Compute Engine to ensure this is non-breaking.  Things seem to be working okay so will merge and publish a new release.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


VSCode Instruction improvements for scalar/sequence intrinsics

Thanks to Wayne for pointing this out but there are some improvements that could be made for the scalar/sequences for intrinsics.
https://github.com/awslabs/aws-cfn-lint-visual-studio-code/issues/46

looks merged into the VSCode extension in this PR. Started recommending the extension here, but might as well not leave this outdated as well:
https://github.com/aws-cloudformation/aws-cloudformation-template-schema/blob/6ee1ccd8a9e2efd3e41c8d3b6028ea138a4c971a/docs/vscode/instructions.md#L32-L49


chip_revision.h - "expected ',' before ')' token" (IDFGH-9069)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
Commit 8464186e67e34b417621df6b6f1f289a6c60b859
Operating System used.
Linux
How did you build your project?
Command line with CMake
If you are using Windows, please specify command line type.
None
What is the expected behavior?
Build the example successfully.
What is the actual behavior?
https://github.com/espressif/esp-idf/blob/master/components/soc/include/soc/chip_revision.h#L36
components/soc/include/soc/chip_revision.h:36:66: error: expected ',' before ')' token  _Static_assert(CONFIG_ESP_REV_MIN_FULL <= CONFIG_ESP_REV_MAX_FULL);
Needs the message part.
Steps to reproduce.

cd examples/get-started/hello_world/
cmake -B builddir/
cd builddir/
make

Build or installation Logs.
...
[ 14%] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c3/rtc_sleep.c.obj
In file included from /<pathTo>/esp-idf/components/esp_hw_support/port/esp32c3/rtc_sleep.c:19:
/<pathTo>/esp-idf/components/soc/include/soc/chip_revision.h:36:66: error: expected ',' before ')' token
 _Static_assert(CONFIG_ESP_REV_MIN_FULL <= CONFIG_ESP_REV_MAX_FULL);
                                                                  ^
cc1: warning: unrecognized command line option '-Wno-enum-conversion'
make[5]: *** [esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/build.make:160: esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c3/rtc_sleep.c.obj] Error 1
make[4]: *** [CMakeFiles/Makefile2:1225: esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/all] Error 2
make[3]: *** [Makefile:91: all] Error 2
make[2]: *** [CMakeFiles/bootloader.dir/build.make:86: bootloader-prefix/src/bootloader-stamp/bootloader-build] Error 2
make[1]: *** [CMakeFiles/Makefile2:1646: CMakeFiles/bootloader.dir/all] Error 2
make: *** [Makefile:136: all] Error 2

### More Information.

riscv32-esp-elf-gcc (crosstool-NG esp-2021r2-patch5) 8.4.0

It looks like you aren't using the correct version of the toolchain for the IDF commit you are using. The version should be esp-2022r1-11.2.0, not esp-2021r2-patch5.
Please try to run install.sh again, then update the environment variables using export.sh. Finally, do idf.py fullclean and then build the project again. Verify in CMake output that esp-2022r1-11.2.0 version of the toolchain is used.

Ah crud! Actually, I had originally been working with with the crosstool-ng build I did in November, but was having issues with Matter (commented elsewhere).
So for due-diligence, I downloaded the toolchain at the top of Releases without looking at anything other than it was sorted by date.
When I tested Matter, and it still failed, I thought I'd test hello-world. This is where this issue came in.
Since then I noticed the top "Release" was the patched one for r2021.
I then downloaded the r2022 from July, and you're correct, that it worked. But still not for my Matter issue which I brought up over there.
My bad, sorry.

EDIT0: I should add, shouldn't it still have a "message" component in that assert?

I think this isn't strictly necessary in the newer versions of the C standard: static_assert and _Static_assert now both work without the message argument. Given that the assert condition here is pretty much self-explanatory, I think it's okay to leave this as it is.


win32: split unittest6.obj, it's becoming too large for OMF

The current object file has 31929 symbols, pushing some PRs over the OMF limit of 32767, for example https://github.com/dlang/druntime/pull/1603

Does this mean that https://github.com/dlang/druntime/pull/1603 is ready for merge?

Does this mean that dlang/druntime#1603 is ready for merge?

It should be back to passing the tests now. But @MartinNowak doesn't want to commit to the changes to the GC interface unless it has proven to be faster than the existing GC (disregarding other benefits).

So, how do we make it faster? 😉

@rainers what do you think about breaking this into multiple PRs each laying down part of the infrastructure bits? Hopefully we could move faster with unobjectionable parts and focus the discussion on the trickier ones?

Discussion should probably happen in https://github.com/dlang/druntime/pull/1603.


[Feat]: Measurement of rejection rate

Description
A cool feature would be if the rejection would be counted in a file.
Or can someone tell me how you count or monitor it?
Proposed solution
No response
Additional details
So what did people click:
accept everything
Configure cookies
reject everything

As a client-side only solution this is not possible without a dedicated API (backend): https://github.com/orestbida/cookieconsent/discussions/208
Here are 2 examples/guidelines which should help you out:

Example using v2
Example using v3

You grab the data (user's preferences) from the plugin and then you send it (using a POST request) to a specific API Endpoint. It will be the task of the API to handle how/where the data should be stored.


[ACS][CallAutomation]add SourceCallerIdNumber to AnswerCallOptions

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Communication.CallAutomation


Fixes #2545. ListView throw exception if click on the top border.

Fixes #2545 - Include a terse summary of the change or which issue is fixed.
Pull Request checklist:

[x] I've named my PR in the form of "Fixes #issue. Terse description."
[x] My code follows the style guidelines of Terminal.Gui - if you use Visual Studio, hit CTRL-K-D to automatically reformat your files before committing.
[x] My code follows the Terminal.Gui library design guidelines
[x] I ran dotnet test before commit
[ ] I have made corresponding changes to the API documentation (using /// style comments)
[x] My changes generate no new warnings
[x] I have checked my code and corrected any poor grammar or misspellings
[x] I conducted basic QA to assure all features are working

I already fixed this. Do a git pull

I already fixed this. Do a git pull

@tig I think you didn't realized what this PR is fixing. See the gif, please. Thanks.


Lab 7 level 4

hi any idea on how to start on level4? I'm not sure how to approach it and I'm quite lost as to what the UnaryOperator is for. How should I implement it, and what should the output be? I read the API for the UnaryOperator and apparently it has an .apply function, could that be how you implement it in the gameOfLife function? Thank you!

Hello! The UnaryOperator is an operation on a single input, and in this case, should take a List and return a modified List. My tutor explained it very well, and gave a simple example for how an UnaryOperator should be used:
static UnaryOperator simpleMethod() {
return x -> x + 1;
}
I'm not sure about the .apply function, but there's a very useful function in the stream API that can apply the rule to the stream iterating through it, so try to identify and use it. Finally, you just need to convert the stream of lists to a stream of integers. Hopefully this helps you! :)

hi evelyynnz, adding on to what jonyeokj said, you can refer to this website to see how UnaryOperators can be expressed in a Lambda expression, as well as how you can use the UnaryOperator function. i found that website quite helpful for understanding UnaryOperators, and hopefully it would help you too

Personally, I found that visualising the the UnaryOperator as a lambda function with a single input was helpful!
So something like this:
x -> x + 1
or
x -> foo(x)
are UnaryOperators!

the unary operator is something like x -> x + 1, so in this case your x will be List, which is the input. after that you can use IntStream with the values being the index of each element in the input List to get each element in the list and from there you can try mapping to new values based on whether it will be alive or dead in the next generation

ok thanks!! also how should i iterate through the lists of lists for the gameOfLife() function? as in how do I change it to a stream of streams / is there any other method to go abt this qn? thankssssss

ok thanks!! also how should i iterate through the lists of lists for the gameOfLife() function? as in how do I change it to a stream of streams / is there any other method to go abt this qn? thanksssss

hi @evelyynnz, if you have a List<List> list, perhaps you can use list.stream() to generate a stream of List then you just have to map each list to the corresponding " " | "*" using a helper function?

Personally, instead of generating the lists of lists, i did what @kaitlyngoh mentioned, which is iterate(T see, UnaryOperator f).limit(n) to immediately get the stream of Lists

the UnaryOperator takes in T type and returns T type so since the API says it can use an apply function means that this UnaryOperator can apply to this T type and returns another output with T type that you want. So maybe you can try UnaryOperator.apply(T type) to give you the output you want


fix tcp_port range and String interpolation typo

Description
Fixed two typos in language.rst file of core docs:

TCP port ranges from 65565 to 65535
Changed "include" to "included" on string interpolation section

I will close this PR since it is a fork and not a feature branch. Another PR will be added that is aligned with our documentation.