Unable to create buffer texture with initial contents

Linux (Arch) x86_64, v4.5 OpenGL context. While doing (make-texture (loop repeat 1 collect (v! 1.0 1.0 1.0)) :dimensions 1 :element-type :vec3) works just fine, adding in :buffer-storage t it fails with the following error and (partial) backtrace below. Seems like the :element-type is being discarded at some point, and if you try without :element-type :vec3 CEPL cannot guess the correct type.
There is no applicable method for the generic function
  #<STANDARD-GENERIC-FUNCTION CEPL.TYPES:ELEMENT-TYPE (4)>
when called with arguments
  ((#(1.0 1.0 1.0))).
   [Condition of type SIMPLE-ERROR]

Restarts:
 0: [RETRY] Retry calling the generic function.
 1: [RETRY] Retry SLIME REPL evaluation request.
 2: [*ABORT] Return to SLIME's top level.
 3: [ABORT] abort thread (#<THREAD "new-repl-thread" RUNNING {1002053093}>)

Backtrace:
  0: ((:METHOD NO-APPLICABLE-METHOD (T)) #<STANDARD-GENERIC-FUNCTION CEPL.TYPES:ELEMENT-TYPE (4)> (#(1.0 1.0 1.0))) [fast-method]
      Locals:
        SB-PCL::ARGS = ((#(1.0 1.0 1.0)))
        GENERIC-FUNCTION = #<STANDARD-GENERIC-FUNCTION CEPL.TYPES:ELEMENT-TYPE (4)>
  1: (SB-PCL::CALL-NO-APPLICABLE-METHOD #<STANDARD-GENERIC-FUNCTION CEPL.TYPES:ELEMENT-TYPE (4)> ((#(1.0 1.0 1.0))))
      Locals:
        SB-PCL::ARGS = ((#(1.0 1.0 1.0)))
        SB-PCL::GF = #<STANDARD-GENERIC-FUNCTION CEPL.TYPES:ELEMENT-TYPE (4)>
  2: (CEPL.TEXTURES::GEN-BUFFER-TEX-INITIAL-CONTENTS (#(1.0 1.0 1.0)) (1) :RGB32F NIL NIL NIL NIL 1 NIL)
      Locals:
        CEPL.TEXTURES::CUBES = NIL
        DIMENSIONS = (1)
        DIMENSIONS#1 = (1)
        CEPL.TEXTURES::IMAGE-FORMAT = :RGB32F
        CEPL.TEXTURES::INITIAL-CONTENTS = (#(1.0 1.0 1.0))
        CEPL.TEXTURES::LAYER-COUNT = 1
        CEPL.TEXTURES::MIPMAP = NIL
        CEPL.TEXTURES::MULTISAMPLE = NIL
        PIXEL-FORMAT = NIL
        CEPL.TEXTURES::RECTANGLE = NIL
  3: (MAKE-TEXTURE (#(1.0 1.0 1.0)) :DIMENSIONS 1 :ELEMENT-TYPE :VEC3 :MIPMAP NIL :LAYER-COUNT 1 :CUBES NIL :RECTANGLE NIL :MULTISAMPLE NIL :IMMUTABLE T :BUFFER-STORAGE T :GENERATE-MIPMAPS T :PIXEL-FORMAT ..
      Locals:
        #:.DEFAULTING-TEMP. = 1
        #:.DEFAULTING-TEMP.#1 = :VEC3
        #:.DEFAULTING-TEMP.#2 = NIL
        #:.DEFAULTING-TEMP.#3 = 1
        #:.DEFAULTING-TEMP.#4 = NIL
        #:.DEFAULTING-TEMP.#5 = NIL
        #:.DEFAULTING-TEMP.#6 = NIL
        #:.DEFAULTING-TEMP.#7 = T
        #:.DEFAULTING-TEMP.#8 = T
        #:.DEFAULTING-TEMP.#9 = T
        #:.DEFAULTING-TEMP.#10 = NIL
        DIMENSIONS = (1)
        INITIAL-CONTENTS = (#(1.0 1.0 1.0))

Another good catch. Thankyou.
The problem here is in #'gen-buffer-tex-initial-contents (textures.lisp line 538). I am assuming a certain type for the initial-contents. I need to rewrite it so that:

if the initial-contents are a c-array and no element-type/image-format provided we assert the args are valid and then just make a gpu-array from the c-array
if the initial-context are a c-array and an element-type/image-format is provided then check that it matches the c-array, assert the args are valid and make the gpu-array.
if the initial-context are a buffer backed gpu-array and no element-type/image-format are provided then just assert the args are valid and use that gpu-array, .
if the initial-context are a buffer backed gpu-array and an element-type/image-format is provided then check that it matches the c-array, assert the args are valid and make the gpu-array.
if the initial-contents are lisp data call make-c-array (passing in the element-type, or if it's an image format convert it to an element-type first) then extract the final element-type, assert the args are valid and make the gpu-array

This will be easy to fix. I'll post back here when I've done it. It's possible that it will be a few days from now as I'm busy tonight and then away for the weekend (I may be able to sneak some lisping in during that time)

Great, thanks. I did look through the code and ended up at gen-buffer-tex-initial-contents as well at some point, and seemed like something was incomplete. Sounds like you got it figured out and is pretty straightforward. Let me know if you need any testing or anything else. In the meantime I just push-g the contents after creating the texture, works great.

Cool, this actually helped be find another related bug in the buffer-texture initialization. I'll push some fixes tonight

Sounds good, thanks!

Should have been fixed by https://github.com/cbaggers/cepl/commit/56f5bb7ec9b6d041f42cfe6c4e8f79eed74b2c50

I believe you, but will be unable to test until #148 is resolved, sorry!

Works for me, thanks!

Yay, thanks again for the help


Refactor: remove true from boolean attribute

Description
Hi :wave: I ran the DeepSource static analyzer on the forked copy of this repo and found some interesting code quality issues. This PR fixes a few of them.
Summary of changes

Removed true from boolean attribute
added .deepsource.toml file

@riodeuno I would like to share the steps to activate the DeepSource analysis on the repo. Activating analysis will help you to continuously analyze repo for code quality issues and fix commonly occurring issues using the auto-fix feature. You can also use it to track test coverage and detect problems in Dockerfile.
Using DeepSource to continuously analyze your repository:

Install DeepSource on your repository here.
create .deepsource.toml configuration which you can use to configure your analysis settings.
Activate analysis here.

Note: This PR merged the .deepsource.toml file so you need not create the configuration file but if you want you can modify it any time either manually or update it from the dashboard as per your requirement.

Hi @riodeuno :wave: Just want to follow up! :sparkles:

Hi @riodeuno @mohanarpit :wave:
Did you activate and try out DeepSource? Would love to know your feedback :)


[Rename]: Tour of Beam to "An Intro to Beam (Python)"

What needs to happen?
Currently, we have a naming conflict with Tour of Beam and the Tour of Beam.
The fix here is relatively high priority as it's quite confusing for users when navigating the site.
Issue Priority
Priority: 1 (urgent / mostly reserved for critical bugs)
Issue Components

[ ] Component: Python SDK
[ ] Component: Java SDK
[ ] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam examples
[ ] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[ ] Component: Google Cloud Dataflow Runner

.take-issue


Move Webpack to an optional dependency

Command
build
Description
With application builder serving as the default for new applications in v17+ and leveraging esbuild + Vite, new apps no longer need Webpack to build. However, Webpack is still a required dependency, even though it isn't used. This significantly bloats node_modules and decreases supply chain security as we have to pull in a number of community plugins.
Describe the solution you'd like
These apps shouldn't have to depend on Webpack at all when they're not using it. Instead, Webpack should become an optional peer dependency of @angular-devkit/build-angular (similar to Karma, Jest, Jasmine, Protractor, etc.). We'll also need a migration to explicitly add Webpack as a dependency for those still on browser builder.
With this, node_modules will hopefully become significantly lighter and install times should be heavily reduced.
Describe alternatives you've considered
No response

If it's not used, how come Webpack is a required dependency? I'd also like to remove it from our project now we are on v17 for the same reasons, but will wait until it's considered safe to do so...

I was looking to file an issue to move esbuild into the set of required dependencies due to a build-system issue I'm facing.
Would this request also entail moving esbuild from being a optional dependency to a required dependency? Or should I file a different issue to cover that?

Closing as this is tackle as part of @angular/build


010 publications page

Added comments to my files.
Front:
• Created PublicationsPage component. Big component
• Created a common resources directory (same level as routes) for shared methods between pages.
Back:
• Created a publications express middleware, exposed it to the server.js file and managed to call it.
• Creating publications-data.json file

Anything else I can help with this PR?


[task] refactor EXPECTED_NUMBER_OF_VIEWER_METHODS tests

🧰 Task
The _get_all_keybinding_methods  and EXPECTED_NUMBER_OF_VIEWER_METHODS  in test_viewer.py need some refactoring.
They are extremely sensitive to when they are called.  If you move tests around slightly, for example, extracting that check to it's own test, the expected values don't add up.  It's also a little unclear where those expected values come from (they appear to be human-collected ... it would be nice if we had a better automated way to know what the expectation should actually be).
Additionally, one of the reasons I'm getting errors is that some action functions end up getting registered twice, making the count incorrect.  For example, for Points:
{
<function copy at 0x133ec2f80>,
<function paste at 0x133ec3010>,
<function delete_selected_points at 0x14df61a20>,
<function delete_selected_points at 0x133ec31c0>,
<function activate_points_pan_zoom_mode at 0x133ec2e60>,
<function activate_points_pan_zoom_mode at 0x14df61ab0>,
<function activate_points_add_mode at 0x133ec2dd0>,
<function activate_points_add_mode at 0x14df61bd0>
<function activate_points_select_mode at 0x133ec2ef0>,
<function activate_points_select_mode at 0x14df61b40>,
<function select_all at 0x14df61900>,
<function select_all at 0x133ec3130>,
<function hold_to_pan_zoom at 0x133ec2d40>,
}

These tests are also too intertwined with tests that should be testing other things (i.e. add_layers).

cc @ppwadhwa @Carreau @goanpeca ... who i think have most familiarity with that test

as a side note: we should also try to figure out why/where multiple instances of the same function are getting registered for a given layer action

I'm going to go on a limb here, and assume that some of those methods are also are bound to specific button instances. I'm not completely surprised.


Add GeoTagging Feature

HTML5 allows for the browser to access location data, so long as the browser is compliant and the person operating the machine allows it. This should be built into Nice to allow for checkins.

Basic functionality is in place to allow for a device's GeoLocation data to be sent to the API if the person authorises the browser to include the information. This is not done with every post, but just the ones specified.
Posts that come with a net.app.core.geolocation or net.app.ohai.location annotation type will have their longitude and latitude read out in order to pull the appropriate static PNG from OpenStreetMaps. Clicking the map will open OSM in another tab to the appropriate location.

Done and done. Browsers (and devices) that support this feature will be able to use it. There may be a need to hide the dropdown option on machines where it's not possible ...


Support for Tools specified dynamically to be added.

Curently in org.bsc.langgraph4j.langchain4j.tool.ToolNode.of(Collection objectsWithTools)
When we pass tool specifications specified dynamically or programatically as per Langchain4j documentation here like example:
    Map<ToolSpecification, ToolExecutor> toolSpecificationMap = new HashMap<>();
    ToolSpecification toolSpecification = ToolSpecification.builder()
      .name("getPCName")
      .description("Returns a String - PC name the AI is currently running in. Returns null if station is not running")
      .build();

    ToolExecutor toolExecutor = (toolExecutionRequest, memoryId) -> {
      return getStationName();
    };
    toolSpecificationMap.put(toolSpecification, toolExecutor);

    toolSpecification = ToolSpecification.builder()
      .name("specialKTwoNumbers")
      .addParameter("operand1", JsonSchemaProperty.type("float"), description("Operand 1 for specialK operation"))
      .addParameter("operand2", JsonSchemaProperty.type("float"), description("Operand 2 for specialK operation"))
      .description("Returns a Float - Performs a specialK operation on 2 nubmers and returns the result")
      .build();

    toolExecutor = (toolExecutionRequest, memoryId) -> {
      LinkedTreeMap<String, Object> arguments = null;
      Object arguments1 = fromJson(toolExecutionRequest.arguments(), Map.class);
      if (arguments1 instanceof LinkedTreeMap)
      {
        @SuppressWarnings("unchecked")
        LinkedTreeMap<String, Object> arguments2 = (LinkedTreeMap<String, Object>)arguments1;
        arguments = arguments2;
      }
      float operand1 = Float.parseFloat(arguments.get("operand1").toString());
      float operand2 = Float.parseFloat(arguments.get("operand2").toString());
      float ans = specialKTwoNumbers(operand1, operand2);
      return String.valueOf(ans);
    };
    toolSpecificationMap.put(toolSpecification, toolExecutor);

Where getStationName() and float specialKTwoNumbers(float, float) are two local functions.
We get the following error:
Exception in thread "main" java.lang.IllegalArgumentException: entries cannot be empty!
	at org.bsc.langgraph4j.langchain4j.tool.ToolNode.<init>(ToolNode.java:61)
	at org.bsc.langgraph4j.langchain4j.tool.ToolNode.of(ToolNode.java:49)
	at org.bsc.langgraph4j.agentexecutor.AgentExecutor$GraphBuilder.build(AgentExecutor.java:68)
	at org.bsc.langgraph4j.agentexecutor.Main.main(Main.java:46)

It is because in the ToolNode.of function, we only consider a function a tool if tool annotation is present
 if (method.isAnnotationPresent(Tool.class)) {
     toolSpecifications.add(new Specification(objectWithTool, method));
  }

Can you please add support for tool specifications specified dynamically or programatically?
Thank you!!

HI @TiruvedulaMithun, I'll work on as soon as possible

Hi @TiruvedulaMithun I've added the requested feature, it is available in the last 1.0-SNAPSHOT
Sample code is here. Please take the opportunity to try it and let me know.

@bsorrentino Wow that was hella fast! Thank you!
Dumb question, I can't seem to find the 1.0-SNAPSHOT version on maven central. How would I go about finding it?

@bsorrentino Wow that was hella fast! Thank you!
Dumb question, I can't seem to find the 1.0-SNAPSHOT version on maven central. How would I go about finding it?

The feature is interesting and  implementation was pretty simple. To use snapshot in maven you have configure the repository
                <repository>
                    <id>sonatype-server</id>
                    <name>sonatype snapshots</name>
                    <url>https://oss.sonatype.org/content/repositories/snapshots</url>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                    <releases>
                        <enabled>false</enabled>
                    </releases>
                </repository>

Unfortunately I keep getting the error:
Could not transfer artifact org.bsc.langgraph4j:langgraph4j-core-jdk8:pom:1.0-SNAPSHOT from/to maven-default-http-blocker (http://<IP_ADDRESS>/): Blocked mirror for repositories: [sonatype-server (http://oss.sonatype.org/content/repositories/snapshots, default, snapshots)]
when replace https with http i get:
Could not transfer artifact org.bsc.langgraph4j:langgraph4j-core-jdk8:pom:1.0-SNAPSHOT from/to sonatype-server (https://oss.sonatype.org/content/repositories/snapshots): PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Any help? Thank you!

Unfortunately I keep getting the error: Could not transfer artifact org.bsc.langgraph4j:langgraph4j-core-jdk8:pom:1.0-SNAPSHOT from/to sonatype-server (https://oss.sonatype.org/content/repositories/snapshots): PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
When replace https with http i get: Could not transfer artifact org.bsc.langgraph4j:langgraph4j-core-jdk8:pom:1.0-SNAPSHOT from/to maven-default-http-blocker (http://<IP_ADDRESS>/): Blocked mirror for repositories: [sonatype-server (http://oss.sonatype.org/content/repositories/snapshots, default, snapshots)]
Any help? Thank you!

I've deployed an intermediate version 1.0-20241111


Bugfix for faceting line plots.

Closes #2239
Fixes a broken doc image: http://xarray.pydata.org/en/stable/plotting.html#id4
The tests passed previously because there was no metadata associated with the test DataArray. I've assigned some now, that should be good enough.

The failing test is the one documented in #2238


Uncaught TypeError: _this.notificationEl.querySelector is not a function

[Enter steps to reproduce:]

Open Atom
Go into Preferences
Click install
Search "checkstyle"
Press install on this package
Error after immediate install

Atom: 1.17.2 x64
Electron: 1.3.15
OS: Mac OS X 10.13
Thrown From: linter-checkstyle package 1.2.0
Stack Trace
Uncaught TypeError: _this.notificationEl.querySelector is not a function
At /Users/christopherkoster/.atom/packages/linter-checkstyle/node_modules/atom-package-deps/lib/view.js:22

TypeError: _this.notificationEl.querySelector is not a function
    at /packages/linter-checkstyle/node_modules/atom-package-deps/lib/view.js:22:58

Commands
     -2:27.8.0 core:confirm (input.hidden-input)
     -0:25.8.0 core:backspace (input.hidden-input)
     -0:25.1.0 core:confirm (input.hidden-input)

Non-Core Packages
autocomplete-java 1.2.7
linter-checkstyle 1.2.0

This occurs when the linter package is not installed. For some reason linter is prevented from being installed correctly as a dependency. Installing linter-checkstyle via apm, or installing linter manually via Atom's UI package management works and resolves the issue.


moving logic out of main

This isn't really necessary, but it's in my opinion more readable since it moves the printing logic to another function, which makes it easier to read the main() function.

Also proudly giving out the platinum :trophy: for the first 3rd party contribution ....

Haha, thank you :)


locust Service Registration error 400 Service profile

One of the tests implemented on the locust_service branch is for Service registration post request with the wrong serviceProfile parameter. What is this parameter for? I could not find it in the documentation or tutorial for light-oauth.

TODO - remove the serviceProfile, it is leftover from Client registration


Clean shutdown of long-running consumer/producer task using eachBatch and highWatermark

Hello, I reached out in the slack channel but thought it made sense to go ahead and open an issue as well. I understand this can be tricky but: I have a long-running task that will consume and produce back to a very large topic. I will be using eachBatch() as this allows me to have access to highWatermark. I would like to be able to run this script and be able to walk away from it, having it manage it's own clean shutdown and process exit once the final offset is reached. Here's an example of what I have so far with all the domain-specific stuff removed:
await consumer.run({
  eachBatch: async ({ batch, heartbeat, resolveOffset }) => {
    const { messages, highWatermark } = batch;
    for await (const message of messages) {
      // Removed: some domain specific stuff involving the consumer and producer.

      resolveOffset(message.offset);
      await heartbeat();

      if (parseInt(message.offset, 10) === parseInt(highWatermark, 10) - 1) {
        console.log('Script finished, disconnecting...');

        // FIXME: Calls to disconnect seem to hang. Neither the consumer nor
        // producer disconnect are logged by the internal kafkajs logger, and
        // we never get to the call to exit the process.
        await consumer.disconnect();
        await producer.disconnect();
        process.exit(0);
      }
    }
  }
});

As you can see by my fixme comment, I cannot seem to get this script to cleanly shutdown the consumer/producer and exit. I've seen such a pattern alluded to in a previous issue and while I know that ongoing consumers are the typical use-case, I would like to identify a solid pattern for my long-running, but self terminating consumer/producer use case. Any tips much appreciated!

It seems that when calling consumer.disconnect(), consumer.stop() is first called, which calls runner.stop(). Then, we attempt to waitForConsumer(). However, this.consuming never transitions to false so the Promise never resolves. (Hope these lines help, I haven't identified yet whether it is is appropriate to introduce another part of the code where this.consuming should be set false.

I ended up doing some manual management, tracking the number of times highWatermark was reached, against my total number of partitions, then shutting down, something like this:
// Removed: use admin api to derive the total number of partitions as totalPartitions.

await consumer.run({
  eachBatch: async ({ batch, heartbeat, resolveOffset }) => {
    const { messages, topic, partition, highWatermark } = batch;
    for await (const message of messages) {
      // Removed: some domain specific stuff involving the consumer and producer.

      resolveOffset(message.offset);
      await heartbeat();

      if (parseInt(message.offset, 10) === parseInt(highWatermark, 10) - 1) {
        highWatermarksReached++;
        break;
      }
    }
  }
});

setTimeout(async () => {
  if (highWatermarksReached === totalPartitions) {
    console.log('High watermark reached, disconnecting...');
    await consumer.disconnect();
    await producer.disconnect();
    await admin.disconnect();
    process.exit(0);
  }
}, 3000)

This is a workable solution for me, I'll close this for now, hopefully it will help someone else too!

Hi @jeromecovington, sorry for the delay, most of the team is already on vacation so bear with me :D
I will take a look at the shutdown sequence, thanks for the detailed investigation.

@jeromecovington I checked the code and everything looks correct, what do you mean by However, this.consuming never transitions to false so the Promise never resolves?
scheduleFetch makes sure that consuming will always end up as false
https://github.com/tulios/kafkajs/blob/67c71927e9c649ff00a88eda8c752849b2eda864/src/consumer/runner.js#L393-L395
maybe you can provide an example?
Thanks

scheduleFetch makes sure that consuming will always end up as false

Right, but since he's calling consumer.disconnect from within his eachBatch, won't we get sort of a deadlock since disconnect will wait for the consumer to finish, which only happens when eachBatch terminates, which it won't because it's waiting for the disconnect, etc?

Sorry for being late to the party. I just encountered the same issue and luckily I found a solution.
The simplified version of my code looked like this:
consumer.run({
  autoCommit: true,
  eachBatch: async (payload) => {
    try {
      await doSomethingWithPayload(payload);
    } catch (ex) {
      await consumer.disconnect();
      setTimeout(retryConsumerConnection, 60000);
    }
  },
  eachBatchAutoResolve: false,
});

The lock was caused by the await consumer.disconnect(); which internally waits for the eachBatch to finish. As you see that poses a problem, because eachBatch can't finish until consumer.disconnect() finishes, which waits for eachBatch to finish ...
Solution: Don't await for consumer.disconnect!
consumer.run({
  autoCommit: true,
  eachBatch: async (payload) => {
    try {
      await doSomethingWithPayload(payload);
    } catch (ex) {
      consumer.disconnect().then(() => {
        setTimeout(retryConsumerConnection, 60000);
      });
    }
  },
  eachBatchAutoResolve: false,
});

Sorry for being late to the party. I just encountered the same issue and luckily I found a solution.
The simplified version of my code looked like this:
consumer.run({
  autoCommit: true,
  eachBatch: async (payload) => {
    try {
      await doSomethingWithPayload(payload);
    } catch (ex) {
      await consumer.disconnect();
      setTimeout(retryConsumerConnection, 60000);
    }
  },
  eachBatchAutoResolve: false,
});

The lock was caused by the await consumer.disconnect(); which internally waits for the eachBatch to finish. As you see that poses a problem, because eachBatch can't finish until consumer.disconnect() finishes, which waits for eachBatch to finish ...
Solution: Don't await for consumer.disconnect!
consumer.run({
  autoCommit: true,
  eachBatch: async (payload) => {
    try {
      await doSomethingWithPayload(payload);
    } catch (ex) {
      consumer.disconnect().then(() => {
        setTimeout(retryConsumerConnection, 60000);
      });
    }
  },
  eachBatchAutoResolve: false,
});


Feature Request:  Serial to MQTT

Hello, I like the box, I want to use the ESP32 to read out the victron MPPT controller, would it be possible to just make a serial -> one way only MPPT to MQTT gateway with 2 Serial ports (2x MPPT controller) ?  This would be very generic and also could use other hardware over serial MQTT readout

Hi,
the ESP32 has several hardware UARTs. This should therefore be possible. Since the UARTs also run via IRQs, there should also be no timing problems. If you look at the add-on examples (spiritlevel and duocontrol), all the essential parts are included. But since the ESP32 has only little free memory, you can't use all the add-ons anyway. Everyone has to find their own compromise.
The concept is certainly generic, but each serial communication is its own problem. The topics / payloads used and the error handling are special and require their own routines. Here it certainly makes more sense to use ESPHOME, for example, which offers a serial sensor.

Yes i know, I programmed my own solution on an esp32 but it is to special and I having only on esp for truma and this it would be power efficient.  I have no idea about python but I'll look in the files you mentioned.
I have also an ESP with 16MB should this be better in the long-run what did you think ?


How to use a call back to run a periodical process  inside the training loop?

I want to modify a certain function during the training loop (let's save every 10 000 global training step). I am using multiple GPUs. Currently, I have implemented it inside the training_step.  While the update is happening I want to make sure other DDP processes works. In the following code, I make sure if the global_rank is zero do the update.
def training_step(self, batch, batch_idx) -> Dict:

      if (not batch_idx==0 and batch_idx%10000==0) and (self.trainer.global_rank==0):

        #do the update

Sometimes this process crashes because, while one GPU is updating the function, other trying to use it.
So is there a call back that I can use to execute my command, where I can make sure the process waits until this step is finish. More like on_end_of_global_training_step?
One more question: how can I get the global_step count inside the training loop?

Dear @shamanez,
Yes, you could use a Callback: https://pytorch-lightning.readthedocs.io/en/stable/generated/pytorch_lightning.callbacks.Callback.html?highlight=callback.
I am not sure exactly which function you are running and if it could be moved to Callback. Could you give us more details ?
def training_step(self, batch, batch_idx):
    if self.trainer.is_global_zero:
        print('in node 0, accelerator 0')

If you want all processes to wait, you can use a barrier.
def training_step(self, batch, batch_idx):
    if self.trainer.is_global_zero:
        print('in node 0, accelerator 0')
    self.trainer.accelerator.barrier('block my processes')

Best,
T.C


[WIP] Add SANTANDER_BSCHESMM to banks with limited history

Added Banco Santander (Spain) to the list of banks with limited history

this works on my machine :)

Hi! Thank you for the contribution.
What error were you coming across to make this change please?

Hi! When I linked my bank account, I would get an error while trying to sync the transaction data. I opened a ticket with GoCardless support and they determined that the issue was that max_historical_days was set to 730 days but my bank allowed only 90 days.
Poking around the repo I found #355 which dealt with this specific issue. By adding the bank's ID to the list of banks with limited history, the issue is fixed and I can now access that data on my tests.


docs: add flagd to the general documentation page

Added flagd via dropdown to the official documentation page, like we already did with community etc.

created a suggestion pr for htmltest - to handle  this issue with the dropdown - https://github.com/wjdp/htmltest/pull/213

Hey @aepfli, I talked to the GC about this last week. We think that it would make sense to create another top-level category called "Ecosystem". This would be an ideal place to put documentation for OpenFeature Operator, Flagd, and supported vendors.
I've put together an extremely high-level mock to try and move the discussion along.

I can help with the copy. Adding the vendors can be handled in a separate issue.
FYI, @open-feature/governance-board

I looked, and it seems like it is more challenging than we would like to have multi-instance docs within the sidebar. Whereas within the navbar, it is easy.
Additional remark, within the navbar, we can only have one level of navigation, so my suggestion would be something like

It is a compromise between both approaches, what do you think?

I've created an issue to create an ecosystem page. I think we can explore this PR again once that page is available.
https://github.com/open-feature/docs.openfeature.dev/issues/329


Add specialized unique() method for categorical arrays

Faster, and respects the order of levels. Use it for droplevels!() to avoid
duplication. This introduces a dependency on NullableArrays in order to return
a NulableArray rather than an Array{Nullable} from
unique(::NullableCategoricalArray).
Fix a bug in levels!() when encountering a null value (uncovered by new
tests).

Current coverage is 83.77% (diff: 95.65%)

Merging #32 into master will increase coverage by 0.53%

@@             master        #32   diff @@
==========================================
  Files             8          8
  Lines           358        376    +18
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            298        315    +17
- Misses           60         61     +1
  Partials          0          0

Powered by Codecov. Last update b6a0659...84b661e

Cc: @kleinschmidt

Current coverage is 84.04% (diff: 100%)

Merging #32 into master will increase coverage by 0.80%

@@             master        #32   diff @@
==========================================
  Files             8          8
  Lines           358        376    +18
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            298        316    +18
  Misses           60         60
  Partials          0          0

Powered by Codecov. Last update b6a0659...6e3105d

Current coverage is 84.12% (diff: 100%)

Merging #32 into master will increase coverage by 0.79%

@@             master        #32   diff @@
==========================================
  Files             8          8
  Lines           360        378    +18
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
+ Hits            300        318    +18
  Misses           60         60
  Partials          0          0

Powered by Codecov. Last update fea9026...88b54f4


Improves the reload of the time entries with ajax

using ajax call to update time entries without an reload page

ref #75

@pedroandrade In the spirit of getting you the Hacktoberfest credit you deserve, I'm going to go ahead and merge this PR 👍


DOC: tidy app docstrings

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
19 unchanged lines in 4 files lost coverage.
Overall coverage increased (+0.01%) to 91.424%

Files with Coverage Reduction
New Missed Lines
%

.nox/test-3-8/Lib/site-packages/cogent3/app/translate.py
2
95.2%

.nox/test-3-8/Lib/site-packages/cogent3/app/tree.py
2
97.06%

.nox/test-3-8/Lib/site-packages/cogent3/maths/scipy_optimize.py
3
85.06%

.nox/test-3-8/Lib/site-packages/cogent3/app/sample.py
12
96.55%

Totals

Change from base Build<PHONE_NUMBER>:
0.01%

Covered Lines:
177861

Relevant Lines:
194546

💛  - Coveralls


1.11.0 Crash on startup

Crash Log

I can't reproduce this, but I believe you, and I see how it might happen. Does this build fix it?
aqua.zip

I can't reproduce this, but I believe you, and I see how it might happen. Does this build fix it?
aqua.zip

That fixed it for me. Mine was crashing with the mod "Had enough items" Which is the fork of the original which supposedly improves load times.

I'll have to test that later.


configuration via UI not working with HA 2022.6.6

Version of the custom_component
Argoclima component: latest master
Home Assistant: 2022.6.6

Configuration
none
Describe the bug
Just tried to setup the integration through the Devices & Services page and got this:

Logs found:
Logger: homeassistant.config_entries
Source: config_entries.py:749
First occurred: 12:27:40 AM (3 occurrences)
Last logged: 12:29:44 AM

Error occurred loading configuration flow for integration argoclima: No module named 'custom_components.argoclima.api'

Debug log

Haven't found more than the mentioned log above when setting:
logger:
  logs:
    custom_components.argoclima: debug

Just did setup the integration yesterday on 2022.6.6 and it worked as expected (dialog to enter ip address).
Maybe restart can help and checking the logs of HA for errors.

Tested it with 2022.6.7 and had success.
@Armadill0  Does it still not work for you?
Have you tried reinstalling the repo via HACS?

@nyffchanium Hi and thanks for your response. I was actually searching for it in HACS and couldn't find it before. After removing the manual install and finding it in HACS today it worked. Thanks for the hint! :+1:


Test discovery fails on .Net Core 2.0

Description
TestExplorer fails to discover tests on .Net Core 2.0 .The output window would show “0 tests” discovered.

Update: From commandline discovery is working fine. Since Netcoreapp2.0 in not in nugget we need to add a default.config file with content

Till today VS from d15prerel branch doesn't have template for template 2.0. Trying to create a local machine which can create project targeting netcoreapp2.0.

Discovery is working now on VS version 15.1 (26406.1) vsuwpt


Fail to start an unit test module with ng-device-detector dependencies

I create a module with ng-device-detector dependency, and prepare a unit test to verify the module. But, I observed the unit test can not start properly.
 // viewModule.ts
var myApp = angular.module('viewModule', [ 'datatables', 'ng.deviceDetector', 'data-service']);
// test-case
describe('TestViewer', function (){
    beforeEach(module('datatables'));
    beforeEach(module('ng.deviceDetector'));
    beforeEach(module('data-service));

    //it-test-logic
}

As I start the unit test, it returns 'TypeError: $controller is not a function', However, when I delete ' ng.deviceDetector' dependency, the test starts normal.
 var myApp = angular.module('viewModule', [ 'datatables',  'data-service']);
describe('TestViewer', function (){
    beforeEach(module('datatables'));
    beforeEach(module('data-service));
    //it-test-logic
}

The "ng-device-detector": "4.0.3" is already included in package.json - 'devDependencies' and 'dependencies' setting.
Do you know what is the missing piece to cause this problem. Your advice is appreciated.
Many thanks.

Can you maybe create a CodePen to demonstrate the issue so i can try to understand what's wrong?


Change method name "resolveDefine" to "hasDefine".

The mothod "resolveDefine" seems like to check whether the argument "enableIndexingAttributes" contains 'define' or not.
Identifier "hasDefine" should be better than "resolveDefine".

@BruceKuiLiu Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

@BruceKuiLiu Thank you for signing the Contributor License Agreement!

Hi @BruceKuiLiu - Thank you for your contribution.
After reviewing this PR, I have decided not to merge these changes.  Though, "hasDefine" is perhaps more intuitive, I am opting for consistency in naming in this case, i.e. with resolveExpression, resolveFrom, etc.  The logic in these methods are fundamentally similar, and the original intent/meaning behind the name is that they are trying to "resolve" the value, which is different from "does the attribute 'have' a value". The former ("resolving") could mean that it will substitute a "default" value, generate a value, apply/plugin a strategy (e.g. Supplier) to get a value, or something else.
Additionally, there are several other areas in the codebase where I say "resolve", e.g. resolveCache(..), as in here.
Finally, I will be using a combination of "resolve" and "require" in cases where the later cannot resolve an object/setting/whatever and should throw an Exception, failing fast.
Regards,
John

thanks.

Hello everyone, I recommend to change the name to "containsDefine". I think it is the same as "hasDefine" as provided by Kui and is  semantically clearer than the original one.
However, according to @jxblum , seems it cannot be merged. Thus there is no need to submit another PR.

Hi @ShangwenWang - It is not that this suggested change cannot be merged, it is rather that there are really 2 types of methods: getters and (like) setters.
"resolveThis", "resolveThat", "resolveXyz"  is commonly used throughout many of the Spring portfolio of projects and combines a mutation (in some cases) with assessment of state. It is also common for resolve methods to throw an Exception if the configuration or value cannot be resolved to preserve fail-fast behavior.  That is not ordinarily common for most isXyz() or hasXyz() methods that return a boolean value, simply assessing the state of an object.
Additionally, these methods are private (in this case) and not intended for consumption by regular application logic as part of some public API. In other cases, the "resolve" methods might be protected in order to allow overriding in subclasses to decorate or alter the behavior (e.g. check additional sources of configuration).
At any rate, this will not be changing.

Thanks a lot.


Add datapower gateway peering status

Gather the gateway peering status data so that it can be viewed, specifically the Primary node for a peer group.
The CLI command is show gateway-peering-status and the equivalent REST call is /mgmt/status/{domain}/GatewayPeeringStatus
The returned JSON format is
{
    "_links": {
      "self": {
        "href": "/mgmt/status/apiconnect/GatewayPeeringStatus"
      },
      "doc": {
        "href": "/mgmt/docs/status/GatewayPeeringStatus"
      }
    },
    "GatewayPeeringStatus": [
      {
        "Address": "IP Node 1",
        "Name": "gwd",
        "PendingUpdates": 0,
        "ReplicationOffset":<PHONE_NUMBER>,
        "LinkStatus": "ok",
        "Primary": "no"
      },
      ....
      {
        "Address": "IP Node 2",
        "Name": "gwd",
        "PendingUpdates": 0,
        "ReplicationOffset":<PHONE_NUMBER>,
        "LinkStatus": "ok",
        "Primary": "no"
      },
      ....
      {
        "Address": "IP Node 3",
        "Name": "gwd",
        "PendingUpdates": 0,
        "ReplicationOffset":<PHONE_NUMBER>,
        "LinkStatus": "ok",
        "Primary": "yes"
      },
      ...
    ]
}

The output format needs to be determined, probably with a naming standard like https://prometheus.io/docs/practices/naming/

Maybe something like
datapower_gateway_peering_primary_info{peer_group="gwd",pod_name="gateway-0"} =1
datapower_gateway_peering_offset_bytes{peer_group="gwd",pod_name="gateway-0"}=5881225785

Ricky, I am not clear on the trawler.set_gauge function and how that manifests in Prometheus. Would the following be correct?
#      {
#        "Address": "<IP_ADDRESS>",
#        "Name": "rate-limit",
#        "PendingUpdates": 0,
#        "ReplicationOffset": 170111082,
#        "LinkStatus": "ok",
#        "Primary": "yes"
#      },

# datapower_gateway_peering_primary_info{peer_group="gwd",pod_name="gateway-0"} =1
# datapower_gateway_peering_offset{peer_group="gwd",pod_name="gateway-0"}=5881225785
# datapower_gateway_peering_link_{peer_group="gwd",pod_name="gateway-0",remote_ip="IP Node 3"}=1

# https://localhost:5554/mgmt/status/apiconnect/GatewayPeeringStatus
    def gateway_peering_status(self):
        logger.info("Processing status provider GatewayPeeringStatus")
        url = "https://{}:{}/mgmt/status/{}/GatewayPeeringStatus".format(
            self.ip,
            self.port,
            self.domain)
        status = requests.get(url,
                              auth=(self.username, self.password),
                              verify=False, timeout=1).json()
        logger.debug(status)

        for entry in status["GatewayPeeringStatus"]:
            if self.ip == entry["Address"]:
                labels = {}
                labels["peer_group"] = entry["Name"]
                pvalue = 0
                lvalue = 0
                if entry["Primary"] == "yes":
                    pvalue = 1
                if entry["LinkStatus"] == "ok":
                    lvalue = 1
                self.trawler.set_gauge('datapower', "gateway_peering_primary_info", pvalue, pod_name=self.name, labels)
                self.trawler.set_gauge('datapower', "gateway_peering_primary_link", lvalue, pod_name=self.name, labels)
                self.trawler.set_gauge('datapower', "gateway_peering_primary_offset", entry["ReplicationOffset"], pod_name=self.name, labels)

I was basing the idea that as each pod has the data it would only write the data relating to it's IP. I could add the Address field and do it for all entries.
I wasn't sure in the comment above what remote_ip relates to.

That code looks right
Just the data relating to it's IP makes sense - I'd originally gone down the rabbit hole of each pod knowing the full state and that state covers the IP for each - but it's cleaner if we're just monitoring that pods view of itself


Logging in with App Key/Secret

Hi,
Is it possible to allow an app to login rather than a user? Refer to https://www.dropbox.com/developers/reference/auth-types#app Under "App Authentication"

App Authentication
This type only uses the app's own app key and secret, and doesn't identify a specific user or team. The app key and secret are transmitted in place of a username and password using "HTTP basic access authentication".

As of now, it's not possible to do so. I don't recall App Authentication being documented while I was working on the Auth part.
However, I'll look into it. Would appreciate any help or contribution.
Cheers!


[EVENT REQUEST] OnBeforeSetValues Event in Report 297 "Batch Post Sales Invoices"

Hi,
we need an event in report 297 "Batch Post Sales Invoices" in the on open page trigger to prevent the overwriting of the request page values.

Can you use already existing OnAfterOnOpenPage to set the values you desire? It would be preferable to implementing another event for this.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 47995.


Dynomite cluster without using dynomite-manager

Hi All
We are trying to build a highly available Dynomite+Redis Cluster (for Conductor persistence) on native Linux machines.
 Does the support exist out of the box ? In some discussions, it was suggested that Dynomite-manager is mandatory for Dynomite cluster to operate, and that Dynomite-manager currently is supported only on AWS.
Is it possible to run the cluster without Dynomite manager in a configuration with (DC=1, RF=3, 1 server in a rack) in a local private datacenter on Linux machines?
Thanks
Guru

+1. We too are looking for the same.
The discussion here seems to indicate that dynomite-manager is required for implementing a highly available Dynomite cluster (i.e. where nodes can go down and rejoin). Is this still true? The docs do not seem to be very clear on this.

Dynomite-manager is not needed to run Dynomite. Dynomite can run standalone. However, if you are thinking of a system that provides the features listed in the readme you will need Dynomite manager. Dynomite provides a number of Rest APIs to create your own lighweight sidecar.

Thanks @ipapapa . Does this mean when a  server in a rack restarts it can catch the lost writes without Dynomite manager?

Nope. If your stop-start dynomite-node it lost changes which was created while node was offline


Text with the '<' character is not displayed correctly when using CKEditorWidget

So, I have an update view in django with a form that has a field with CKEditorWidget.
When going into the view, if the field text has the character '<', the initial value of the input just strips everything from the character until the next html tag or the end of the text.
How can I override this behaviour to allow '<' in the text?

Hi,
That's really a CKEditor-specific question so you should better ask it in a CKEditor forum, not in a django-ckeditor forum. Thanks.


Does it work?

Training with default setting on colab, after 3 epochs the output images are pure noise, (see attachment). Earlier test at 90 epoch, same result.

Seems WebUI is not happy with the format of the checkpoint. Added a small conversion script and it should work now.

It does work now, after running output.ckpt through convert.py.


Code scanning: deprecation of CodeQL Action v1

We must update the code-scan
https://github.blog/changelog/2022-04-27-code-scanning-deprecation-of-codeql-action-v1/
Also see if we can only run on pull_request and not on push to avoid upload issues

Fixed in #387


Fix example py_in file

Originaly, there is a comment line at the end of the file that will cause problem during running make. This commit just remove the last comment line.

@orhankislal

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/191/

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/203/


Add support for API Keys

I'd like to add support for API Keys as per https://swagger.io/docs/specification/authentication/api-keys/
I'm happy to submit a PR if you can point me in the right direction to add this functionality.

Hi @jjafuller ,
I am actually looking to adding this next as we have this requirement soon at work.  Will probably add a new documentation header for Authentication (in docparser.py) and then handling the output to swagger spec (views.py - SwaggerApiHandler)

Hi again,
Please see new release 0.1.16.
Summary -- defining security schemes
`
import tornado_swirl as swirl
from tornado_swirl.openapi import security
scheme = security.APIKey('MY-API-KEY', location="header")
swirl.add_security_scheme('my_api_key', scheme)
`
Documenting on the Endpoint handler
`
class MyHandler(RequestHandler):
def get(self):
    """Sample endpoint

    Security:
        my_api_key
    """

`
Also see TUTORIAL.md in repo.
Thank you for your feedback and please do not hesitate to message me for any issues.

Awesome!


fix ppa repositories in ci_build

Those repositories are just workaround for old versions of libraries on old ubuntu (trusty). Those ppas do not make sense on newer ubuntu or debian.

I'm closing this one. I will reopen it against r0.8 branch.


VASP update state change refactor

This adds a new function UpdateVerificationStatus which updates the verification state of a VASP and appends an entry to the audit log to record the state change. State changes have been refactored to use this new function instead of just assigning a new value to VASP.VerificationStatus.

Codecov Report

Merging #119 (b7063b0) into main (b5eadd3) will increase coverage by 0.16%.
The diff coverage is 81.81%.

:exclamation: Current head b7063b0 differs from pull request most recent head d187ae5. Consider uploading reports for the commit d187ae5 to get more accurate results

@@            Coverage Diff             @@
##             main     #119      +/-   ##
==========================================
+ Coverage   38.55%   38.72%   +0.16%
==========================================
  Files          27       27
  Lines        2801     2812      +11
==========================================
+ Hits         1080     1089       +9
- Misses       1543     1544       +1
- Partials      178      179       +1

Impacted Files
Coverage Δ

pkg/gds/models/v1/models.go
73.73% <81.81%> (+1.01%)
:arrow_up:

Continue to review full report at Codecov.

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

@bbengfort Thanks for getting to the review so quickly! I'll hold onto this PR for now until I can integrate the user email. As for your other question, I'm leaning towards creating another story for the email audit log and handling that in another PR.

@bbengfort I've rebased and added the email from the context, mind taking a quick look to verify that the rebase is correct and the claims error handling is ok?


Replace coveralls with codecov.io

As discussed in a recent maintainer's meeting, coveralls interacts poorly with github actions, whereas codecov.io offers a much smoother experience.
@jrbourbeau I need support from an admin to integrate codecov.io with the repo
@jsignell FYI this interacts with your PR #7198

From looking through https://github.com/codecov/codecov-action#usage, it looks like codecov supports tokenless uploads for public repos. I'm curious if adding the codecov action step will "just work"

From looking through https://github.com/codecov/codecov-action#usage, it looks like codecov supports tokenless uploads for public repos. I'm curious if adding the codecov action step will "just work"

I tested it extensively in all of my repos; no token needed

@jrbourbeau ready for final review and merge

Do you have any thoughts on what might be causing our coverage reports to trigger these warnings?

I suspect they may be created by the workers of a LocalCluster.
The main pytest process spawns 4 subprocesses as test workers (and that's well supported by pytest-coverage); then each of those 4 subprocesses spawns its own subprocesses whenever it fires up the workers of a LocalCluster. That I suspect is catching pytest-coverage unprepared.
Ultimately they are harmless noise, unless we fancy verifying the coverage of a function that runs remotely on the distributed scheduler - which is important for the distributed package, but not so much here.

Alright, let's give this a shot then

https://app.codecov.io/gh/dask/dask/ looks good 🎉

Awesome stuff! I'm a big fan of codecov.
I wonder if there is any reason to have the COVERAGE env var switch any more, codecov handles merging of coverage reports from multiple runs.


[BugFix] Fix log4j log failed bug

Fixes #27650
backport #17254 #17129 #27669

[FE PR Coverage Check]
:heart_eyes: pass : 0 / 0 (0%)


iPhone X display issue for TabBar

This should be fixed now. Let me know if you still encounter this issue.


Remove wei bot

Removed wei bot automation from the main, because we don't want always to pull all the commits for the upstream main.

@atheo89 Since we are removing this, we should enable CI tests for downstream as well.


Remove unnecessary recursion from Container::get().

Container::get() needlessly makes a recursive call to itself in instances where a service provider needs to be invoked to register the service.  In typical usage, this has no adverse affects. However, problems could arise if:
a) a bug in the service provider failed to register a service that it claimed to provide.
b) a subclass of container that overrides get() will be called twice whenever a provider registers a service.
While these are not likely to be issues for most users (I happen to care about (b)), it is easier to tell by inspection that the code in this PR will definitely terminate, whereas the behavior of the service provider must be known to determine this in the original code.

Looks good to me, I actually came across (a) recently but haven't had time to fix, will pull this in and tag when I get to a computer. Thanks.

Thanks!

No problem, thanks for contributing :+1:


Support multicursor intellisense when first cursor is inside string context

It is understandable that intellisense is not supported within quotes. However, with multi-cursor situation when at least one cursor is not inside quotes, it makes sense to actually enable intellisense.
This only works when out of the two cursors in this situation, the first is not within quotes.
//                   |            | <- means cursor
console.log(something|, 'something|') // intellisense works
console.log('something|', something|) // doesn't work

snippet code
"console.debug2": {
	"description": "Log output to console debug",
	"prefix": ["cd2"],
	"body": [ "console.debug(${2:$1}, '$1')" ],
	"scope": "javascript,typescript,javascriptreact,typescriptreact"
},

"console.debug": {
	"description": "Log output to console debug",
	"prefix": ["cd", "cdd"],
	"body": [ "console.debug('$1'${2:, $1})" ],
	"scope": "javascript,typescript,javascriptreact,typescriptreact"
},

My proposal is that if first cursor doesn't provide intellisense, use the next in queue.

IntelliSense, when invoked manually, isn't driven or muted by quotes but it all depends on the primary cursor. That's the one we use for making the request to extensions and I assume in the latter case the primary cursor is inside the quotes and the "language brain" decided not to deliver a result

Yeah, I assumed that it would be something like that. But the question is - if the primary cursor doesn't deliver a result, can we query for secondary cursor?
Or go even further and query for primary and secondary cursors at once, and make it a toggle in settings?

I was thinking, would it be possible to swap the cursors? That would solve everything. I can totally do that manually already.

I wouldn't mind doing that with another keyboard shortcut as a workaround.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

so sad :'(

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

I wonder, is it possible to swap the two cursors with a command or key combination? That would solve my issues too.


Scrollable place field

Display scrollbars for a scrollarea field if it contents doesn't fit the area of field.

hi,
i just like to ask if there is any progress on this feature?

No, but I will start working on these new features when I have free time, probably the month after next.

that would be very nice thank you.


ADLS Gen 2 Append and Lease Operations

Description
Adding functionality to make releasing leases available and bundled with flush API of the HDFS endpoint.

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-storage-file-datalake


Add support for SSR between targets

What does this PR do?
The full description of this PR is on the changes made to the README.md:

Let's say you have a backend target with your Node server code, and a frontend target with your React code, and you want to require your frontend code on the backend in order to use ReactDOM.renderToString(...):
For your backend target you'll have to define its framework property to react, so the plugin can include the JSX loader, and then add an extra option to enable SSR from backend to frontend:
module.exports = {
  targets: {
    backend: {
      type: 'node',
      framework: 'react',
      frameworkOptions: {
        ssr: ['frontend'],
      },
    },
  },
};

This new setting (frameworkOptions.ssr) is where you tell the plugin that the targets on that list should also have their JSX parsed for you to use on Node.
Done, now you can require/import files from your frontend target on the backend target and everything will work.

How should it be tested manually?
yarn test
# or
npm test

Pull Request Test Coverage Report for Build 16

7 of 7 (100.0%) changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 14:
0.0%

Covered Lines:
65

Relevant Lines:
65

💛  - Coveralls


Wiederkehrender Fehler 13 - case 5

Avoid duplicates

[ ] Bug is not mentioned in the FAQ
[ ] Bug is specific for iOS only, for general issues / questions that apply to iOS and Android please raise them in the documentation repository
[ ] Bug is not already reported in another issue

Technical details

Device name: iPhone 11 Pro
iOS version: 14.4
App version: 1.15.2 (2)

Describe the bug

Risikoermittlung nicht möglich. Wiederkehrender Fehler 13.
Steps to reproduce the issue

Expected behaviour

Possible Fix

Additional context

Internal Tracking ID: EXPOSUREAPP-5836

Hi @christiane3012,
Thank you for your report. We had a few similar reports already.
Did  you recently scan a QR code. Other users reported the probem started shortly after having received a positive test result. Did something similar happen on the phone you are reporting the problem?
Thank you for your feedback, very much appreciated. Best wishes, DS

@christiane3012 See auch folgenden Kommentar: https://github.com/corona-warn-app/cwa-app-ios/issues/2387#issuecomment-815173737

Danke das du diesen Bug gemeldet hast! Wir haben schon ähnliche Berichte in #2327, #2220 und #2316.

In der Zeit in der du "Begegnungsinformationen teilen" ausgeschaltet hast werden deine Kontakte nicht aufgezeichnet und dein Risiko wird nicht berechnet.
Wenn du das nicht willst gib bescheid, es gibt noch andere Optionen, die aber manchmal nicht funktionieren.
Damit wir den Fehler analysieren können, wäre es perfekt wenn du den sog. EN-Log hier auf GitHub hochladen könntest (Anleitung siehe unten).
Teile uns bitte außerdem mit
deine iOS Version
deine App Version
ob du einen Test registriert hast
ob dir irgendwelche anderen Fehler aufgefallen sind bevor der Fehler auftrat
Anleitung zum exportieren von EN-Logs unter iOS 13.7 oder neuer

Internal Tracking ID: EXPOSUREAPP-5836

Hi dsarkar,
no, I didn‘t scan  a qr-code. If you Need any additional Information or logs just contact me.
Thanks !
:-)
Christiane

Am 08.04.2021 um 08:08 schrieb dsarkar @.***>:

Hi @christiane3012,
Thank you for your report. We had a few similar reports already.
Did you recently scan a QR code. Other users reported the probem started shortly after having received a positive test result. Did something similar happen on the phone you are reporting the problem?
Thank you for your feedback, very much appreciated. Best wishes, DS
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@christiane3012 Thanks for the feedback! Yes, logs would be very much appreciated. If you could follow these steps  https://github.com/corona-warn-app/cwa-app-ios/issues/2389#issuecomment-815489008 and report back, that would be fantastic. Best wishes, DS

Hope it helps !
Regards,
Christiane

Am 08.04.2021 um 09:02 schrieb dsarkar @.***>:

@christiane3012 Thanks for the feedback! Yes, logs would be very much appreciated. If you could follow these steps #2389 (comment) and report back, that would be fantastic. Best wishes, DS
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

@dsarkar
Should I open a new issue where we can communicate the findings from the devs and I (and other community members) can share their findings? I'm trying to reproduce this, test result added, etc. Didn't yet was able to.
Also, we should think about centralizing this issue into one issue, we now have 5 open issues reg the same.

@Ein-Tim OK, lets make a new issue with a summary/table, a good idea. Something like that:
Case # / CWA v / iPhone / iOS / pos test result seemed to trigger issue (y/n) / ENF log provided / Workaround fixed issue?

@dsarkar
Will create ASAP.

Workaround worked...
Thank you  !
🙂
Christiane

App working After applying workaround.

Nice to hear, thank you for your help @christiane3012!
Stay safe!
@dsarkar
I suggest to close this issue to focus on the unsolved cases, I'm quite sure they all have the same root cause.

@Ein-Tim @christiane3012 OK, thanks for the feedback!. We are closing this issue now. Should you have more trouble regarding Error 13 please re-open this issue. Best wishes, DS

Hi @christiane3012 Can you confirm that also with release 2.1 you have not experiences ndy issue with 'Fehler 13'. Feedback is very much appreciated. Thank you, DS

Corona-Warn-App Open Source Team

Hallo @dsarkar, no, 'Fehler 13' did not show up until now, but I updated only one hour ago to release 2.1.
I'll let you know, if the problem reoccurs.
Kind regards,
Christiane

@jane1973 Vielen Dank für das Feedback. Viele Grüsse, DS

Corona-Warn-App Open Source Team


MRG: Fix use of verbose

No need to pass self.verbose to classes when calling methods, the verbose decorator automatically checks to see if the first arg is self and if so checks for self.verbose and uses it.

thanks @Eric89GXL !


Timeot ending task when NATS unavaiable

Found in OCAM,
Probably Timeouts on MessageReader consumer_info or sth is not handled.

fixed in 1.0.4


You have to update version of the Kotlin Gradle plugin.

    You have to update version of the Kotlin Gradle plugin.

Find the latest version, then update D:\Taxi\Flutter\Driver\android\build.gradle:
ext.kotlin_version = '1.7.20' this is latest version
Originally posted by @DevMansoor in https://github.com/flutter/flutter/issues/117758#issuecomment-1367113034

Hi,
When opening an issue, please try to provide all or some of the information indicated in the template.

Issue Template
If you are looking for support, please check out our documentation
or consider asking a question on Stack Overflow:
- https://flutter.dev/
- https://api.flutter.dev/
- https://stackoverflow.com/questions/tagged/flutter?sort=frequent

If you have found a bug or if our documentation doesn't have an answer
to what you're looking for, then fill our the template below. Please read
our guide to filing a bug first: https://flutter.dev/docs/resources/bug-reports

Steps to Reproduce

Please tell us exactly how to reproduce the problem you are running into.

Please attach a small application (ideally just one main.dart file) that
reproduces the problem. You could use https://gist.github.com/ for this.

If the problem is with your application's rendering, then please attach
a screenshot and explain what the problem is.

1. ...
2. ...
3. ...

Please tell us which target platform(s) the problem occurs (Android / iOS / Web / macOS / Linux / Windows)
Which target OS version, for Web, browser, is the test system running?
Does the problem occur on emulator/simulator as well as on physical devices?

Target Platform:
Target OS version/browser:
Devices:

Run your application with `flutter run --verbose` and attach all the
log output below between the lines with the backticks. If there is an
exception, please see if the error message includes enough information
to explain how to solve the issue.

Run `flutter analyze` and attach any output of that command below.
If there are any analysis errors, try resolving them before filing this issue.

Finally, paste the output of running `flutter doctor -v` here.

Closing this issue, since no information has been provided.
Thank you.


Add Edger8r::search_path() method

The Edger8r now supports having search paths specified for importing
dependent edl files

Current dependencies on/for this PR:

main

PR #245

PR #251

PR #253

PR #254   👈

This comment was auto-generated by Graphite.


Explore options for smaller footprint, browser-based webrtc clients

After installing the y-webrtc package, my unminified JavaScript bundle went from 219.7kb to 417.6kb (197.9kb difference) and my minified bundle went from 90kb to 202kb.
I was naturally curious, so I found BundleBuddy and here's the report they generated.

It looks like simple-peer represents the lion's share of the size increase (96kb minified) and a quick glance at the source file indicates there are quite a few nodejs modules being pulled into what is ostensibly meant to run in a browser.
I haven't dug deep into this yet, but thought I'd check in to see if anyone is already looking into ideas here.
Overall outstanding library and thanks so much for all your hard work!

Hi @lukebayes,
Unfortunately, simple-peer is the best battle-proven webrtc solution out there. But feel free to investigate if there are alternatives with a smaller footprint, I'd be intrigued as well.

That's what I was afraid of. I'll see if I can schedule some time to dig in over the coming months.
Please feel free to close this ticket. I just wanted to be sure I wasn't jumping into something others were already pushing on.
Thanks!

Alright, closing. But please feel free to reopen if you find alternatives.

There's a fork of simple-peer that has the extra node modules removed, though it drops support for stream.Duplex. I don't know if it will be maintained however.
https://github.com/gfodor/tiny-simple-peer

This looks pretty cool. Thanks for sharing @neftaly!
I might accept a PR to switch to tiny-simple-peer. My only concern is whether this package works as reliably (well, as reliable as webrtc can be). The package seems as well maintained as simple-peer..

@gfodor is it a good idea to use your fork of simple-peer? Would you accept PRs etc? Any chance you could please turn on issue tracking? Thanks!


Add kubernetes 1.19 and 1.20 and update latest for older releases

Thank you for the PR and the support of the project. I have verified your changes on the website and everything is correct.


luci-mod-admin-full: add DUID option to static leases section

It adds field for DUID value to LuCI static leases configuration.
This should solve usability issue mentioned in https://github.com/openwrt/luci/issues/940
Signed-off-by: Jan Pavlinec<EMAIL_ADDRESS>

I am not sure if it is wise / safe to offer the possibility to edit/assign DUID in LuCI.
I think that if has some format requirements.
@ dedeckeh knows maybe better

I am not sure if it is wise / safe to offer the possibility to edit/assign DUID in LuCI.
I think that if has some format requirements.
@dedeckeh knows maybe better

I have a similar change in the pipeline. I added this to datatypes.lua
function duid(val)
	return (val and val:match("^[a-fA-F0-9]+$") and (#val == 28))
end

You might to give this a try.

Also:
function hostid.validate(self, value, section)
	local m = duid:formvalue(section) or ""
	local n = name:formvalue(section) or ""
	if value and #n == 0 and #m == 0 then
		return nil, translate("One of hostname or DUID address must be specified!")
	end
	return Value.validate(self, value, section)
end

And the hostid type in datatypes.lua could look like this:
function hostid(val)
	if val and val:match("^[a-fA-F0-9:]+$") and (#val > 2) then
		return (ip6addr("2001:db8:0:0" .. val) or ip6addr("2001:db8:0:0:" .. val))
	end

	return false
end

(It has one downside, it does not accept :: but ::0. That is to avoid more complex testing and string matching. Feel free to optimize it.

I pushed my changes: https://github.com/openwrt/luci/pull/1014
Hope that helps!

@hnyman Creating a static IPv6 lease without the capability to specify the DUID value is not really usefull. odhcpd uses the DUID option from the client to match the DUID value in its lease table to find the lease; without DUID value there will be no match for static IPv6 leases.
odhcpd accepts DUID as a hex stream value for the duid uci option; the value depends of course on the DUID used by the client which is not always clear beforehand as the client can use DUID-EN/DUID-LLT or DUID-LL as described in rfc3315 paragraph 9.1

AFAIK we have 4 types of DUID:

Link-layer address plus time (DUID-LLT), RFC3315, variable length
Vendor-assigned unique ID based on Enterprise Number (DUID-EN), RFC3315, variable length
Link-layer address (DUID-LL), RFC3315, variable length
UUID-Based DUID (DUID-UUID), RFC6355, 128bits

odhcpd requires "duid string DUID in base16", so I guess hexstring is set?
Given that only one has a reliable length constraint, we should not enforce a particular length. I suggest, however, we enforce type hexstring and a minimum length (enforce non-empty, e.g. one byte -> 2 hexstring).
Comments?

A minimum of 102 bits? But that's not aligned in hex.

It also doesnt sum up with parts. Typo. 112 bits.

I suggesst and(rangelength(28,36),hexstring) to cover every DUID from 112 to 144 bits.

@dedeckeh it seems odhcpd will assign dhcpv6 by MAC, if its available on link. This seems like common solution to DUID frustration in many DHCP servers. Are there any caveats to odhcpd specific way of doing this? We may wish to put guards in LuCI if so. I have been looking through the code, but sparse comments make sorting design intent and artifacts of implementation tricky.

@EricLuehrsen odhcpd is doing dhcpv6 assignment either by mac or duid match. If the DUID is based on link layer address type comparison is done against the assigned mac value. Thus for a static IPv6 lease it's possible to specify both duid and mac; if either of them matches  the lease is assigned to the client

Merged in 37f4a3b90c56fea8d06833092ce6a5e2e2c2d1d1 with field validation suggested by @danrl - thanks!

Currently, this fails to match type 3 Link-layer address (DUID-LL), of which I happen to have one device. This DUID is just 80 bits (16 bit DUID type, 16 bit hardware type, 48 bit mac).


⚠ GitHub has degraded performance

In 31f3f1e, GitHub (https://www.githubstatus.com/api/v2/status.json) experienced degraded performance:

HTTP code: 200
Response time: 200 ms

Resolved: GitHub performance has improved in a9da19d.


Dash needs to be removed in the DUID

In the DUID dash is not allowed and cause the command to fail the DUID must be without dashes like this
-ClientDuid "0001000115F97FABF0DEF17A005E"

Docs Build status updates of commit cadc4fc:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docset/winserver2019-ps/dhcpserver/Add-DhcpServerv6Reservation.md
:white_check_mark:Succeeded
View (WindowsServer2019-ps)

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


Donut Chart Fill Color Is Grey When Custom Series Colors Are Specified

I'm having trouble getting a donut's fill color to follow my configuration. I want the sections of the donut for each series to use the series' color (or the fill color perhaps?), but instead they appear grey.
My appstack version is 3.8.4.
Here's my configuration for an example chart:
var options = {
      chart: { height: 350, type: 'donut' },
      fill: { colors: ['red', 'green', 'yellow'] },
      colors: ['red', 'green', 'yellow'],
      labels: ['Offline Servers', 'Online Servers', 'Warning Servers'],
      series: [44, 55, 13]
};

Here's what I'm seeing:

I would expect the fill color for the highlighted section of the donut to be red here. What am I missing?

You should only provide either hex or RGB/RGBA format. Color names are not accepted at the moment as stated in the docs.


Bridge not loading - application error (rpc?)

Steps to reproduce the behavior:

Go to mainnet
Go to Pool
Switch to Bridge UI

Access to fetch at 'https://rpc.ankr.com/polygon' from origin 'https://amarok.bridge.connext.network' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
_app-57f70c61bedb67dd.js:1          POST https://rpc.ankr.com/polygon net::ERR_FAILED

also in Pool UI

Hmm, the not loading issue shouldn't caused by RPCs. IMO, those RPC errors shown in the console don't affect the loading performance. It looks likely a bug on the UI. We cannot reproduce it, and still investigating it.

I think it could be due to rpc errors.
Application Error: A client side exception has occurred this error is from the next js and that error usually occurs when it fails the incoming data from API or rpc. So rpc call is failed, such error can happen and i think we need to add more try-catch on UI code.

@nrsirapop @pjenviri any thoughts on the comment from @liu-zhipeng?
or is there any way to log this somehow? my main concern is i cant really evaluate scope of impact without seeing if users encounter it in prod

Added exceptions to prevent application errors. If the UI encounters an RPCs error, it will show a message error/console log.

closing it, cause we aren't running into this issue after updating RPCs in last week.


It worked perfectly, except when I expected it to work

When I want to afk at enderman xp farm, the atuomatic left click just won't work, it just auto click for 2 or 3 times then stop.
It will perfectly click every 625ms in the menu, it will perfectly work when I point at a block, but it just stop clicking when I point to the endermen!
Is it conflict with some mods? I think those mods I loaded may affect it:

auto switch (disabled in game)
auto fish (disabled in game)
baritone (not using)
inventory profiles next
tweakeroo

Hi, thanks for reaching out. I'm afraid I don't know what's causing this issue. Try disabling all your mods and see if it works then? If it does, re-enable them one by one until it stops working so you know which mod is causing the conflict. Hope this helps, sorry for the late response


content seems to calculate wrap width wrong

see:

this is on an 80 column width console.
If I resize my console to the width of my MBP screen, it looks ok:

I'm wondering, if the terminal is quite narrow (like 50% of MBP 13 screen), like 640px (not retina pixels, but effective-ones), would the description column look right if it kept padding the wrapped text? For example like this (mockup based on Menlo 14px, 640px-wide Hyper.js and ZSH):

Also, maybe paragraph "Check your code before removing..." could be removed from each separate dep and then placed once, on the footer?!? That might cut the vertical length..


How to query versions?

I created a Schema as described in the documentation:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var version = require('mongoose-version');

var Page = new Schema({
  title : { type : String, required : true},
  tags : [String],

  lastModified : Date,
  created : Date
});

Page.plugin(version, { collection: 'Page__versions' });

How can I query Page__versions without having a model to import?

Solved by using database object


[BUG] Laser Sight Can Be Toggled At Any Time

Description of the bug:
You are able to enable and disable the taser laser sight with any weapon
Video of the bug:
N/A
Steps to recreate the bug:
N/A

Resolved In Release v0.2.2-beta


plugin's configuration doesn't work with custom .babelrc in NextJs

I have installed in my project: "babel-plugin-styled-components": "^1.12.0"
Followed by documentation I created custom .babelrc file:
"plugins": [     [       "styled-components",       { "ssr": false, "displayName": true, "preprocess": true }     ]
results:

There is no display name

ssr option just ignored (collected style sheet included in server response)

endless warning about mismatching classnames

How to resolve all of this issues?
versions:
"next": "^10.2.0"
"styled-components": "^5.3.0"

are you trying to Server side render this app? If so the classnames generated on server side does not match with clientside after hydration, hence you see this error.
try changing you babel config to "plugins": [ [ "styled-components", { "ssr": true, "displayName": true } ]

I think you'd still need to add next/babel to presets for a custom babel config?

I just migrated to "emotion" because "styled" plugin doesn't work as expected


[v2]: fallback for tab choice (groupId)

🚀 Feature
When setting groupId on Tabs, it switches the tab selection for all tabs in this group and also stores the state in localStorage which is great. However, if there is a tab where one option is missing and this option is the selected one by using another tabs object of the same group with more choices, it looks kind of weird if no tab is selected. (see Motivation below for a real-world example)
Just falling back to the first TabItem would be one option. Alternatively, there could be a property for Tabs called fallbackTab or so which could reference TabItem.value. Yet another option would be to use the value of Tabs.defaultValue.
I would have opened a PR but I'm not sure which option the maintainers may prefer.
Have you read the Contributing Guidelines on issues?
y
Motivation
Example use case: You have a docs site where you show how to do things with UI, API and CLI. You are using tabs, so users can switch between UI, API and CLI. Some features however, are not available in the UI for example, i.e. there are tabs with all 3 options and some with only API and CLI.
Pitch
(Please explain why this feature should be implemented and how it would be used.)

PRs welcome :)

I put up a fix in #2893 that avoids updating a local choice is the chosen one is missing. @LukasGentele does that look good to you?

@SamChou19815 This is definitely the easiest solution. Great idea. Thanks for fixing this so quickly.


Beta VS for Mac

Guys,
I know its Beta and I know its a new productbut is there a way to install PTVS into the Mac Version of Visual Studio
Cheers
Andy

Unfortunately not.
Despite the naming, Visual Studio and Visual Studio for Mac are essentially different products, so we would have to reimplement most of PTVS. But we know the team behind the Mac version is keen to have Python support, so if you want to send some encouragement their way (through their UserVoice site) it will help make it happen.


Issue #16 custom scrollbar

Thank you for letting me work on this issue. I've worked on the scroll bar, I've changed the color of the scrollbar but its not changing depending on the theme, I added the .blue/red/purple/green/black class to ::-webkit-scrollbar-thumb.  The colors are still in the main.css, I hope you will be able to find the solution so that they could be applied.

@Beela303 Great
It would be great if we can change the scroll based on themes.

Thank you!
Okay


web optimize for 1.4.0

What is the purpose of the change
fix known web bugs of dev-1.4.0
Related issues/PRs
Brief change log
Checklist

[x] I have read the Contributing Guidelines on pull requests.
[ ] I have explained the need for this PR and the problem it solves
[ ] I have explained the changes or the new features added to this PR
[ ] I have added tests corresponding to this change
[ ] I have updated the documentation to reflect this change
[ ] I have verified that this change is backward compatible (If not, please discuss on the Linkis mailing list first)
[ ] If this is a code change: I have written unit tests to fully verify the new behavior.

Please resolve the conflict


Create official releases + changelog notes

It would be cool if you were able to make some official github releases to help track the versions + changelog + etc:

https://docs.github.com/en/repositories/releasing-projects-on-github/about-releases

I only found out that the 2.0 version came out by accident:

This should now be fixed in v2 since there's the long awaited JSON mode with the new structured outputs.  Please take a look and repoen if anything comes up
Originally posted by @jehna in https://github.com/jehna/humanify/issues/22#issuecomment-2282876269

Also, it looks like the v2 branch may have been started from scratch, rather than continuing on from the historical branch. Why was that?

It would be cool if you were able to make some official github releases to help track the versions + changelog + etc

Yes, let's do this for new versions! I think I can generate a changelog and versioning automatically while doing a new release to npm.

Also, it looks like the v2 branch may have been started from scratch (first commit: https://github.com/jehna/humanify/commit/e9770a63461835aac2e23fe0b0761610046cc634), rather than continuing on from the historical branch (https://github.com/jehna/humanify/tree/v1). Why was that?

Yes, v2 was a complete rewrite from scratch, so I started with an orphan branch. Probably should have rebased on top of a clean-wiped v1 to ensure git pull would have worked for others that had cloned the repo, I can imagine it caused quite some conflicts. Sorry about that 😬

I've used this in some other projects, could become handy here too:
https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes

Here's the docs for gh release create --generate-notes:
https://cli.github.com/manual/gh_release_create

Should work now, creates this kind of autogenerated release notes:
https://github.com/jehna/humanify/releases/tag/v2.1.0

Should work now

@jehna Looks good!
One note/question:

I get that you might want to suppress dependabot as 'noise'; but I also wonder if knowing what libraries were updated might be useful? At least for main dependencies (devDependencies probably less so)
Originally posted by @0xdevalias in https://github.com/jehna/humanify/pull/42#discussion_r1719339469


FirebaseRecyclerAdapter but Failed to convert value of type java.util.HashMap to String?

Hi ,
Trying to create FirebaseRecyclerAdapter that retrieve data all data from object class , but i get the error "Failed to convert value of type java.util.HashMap to String"
here is my code :
public class Match {
   private String name;
   private String desc;

   public Match() {
   }

   public String getName() {
      return name;
   }

   String getDesc() {
      return desc;
   }
}

public class MatchHolder extends RecyclerView.ViewHolder {
    private final TextView mNameField;
    private final TextView mMessageField;

    public MatchHolder(View itemView) {
        super(itemView);
        mNameField = (TextView) itemView.findViewById(android.R.id.text1);
        mMessageField = (TextView) itemView.findViewById(android.R.id.text2);
    }

    public void setName(String name) {
        mNameField.setText(name);
    }

    public void setDesc(String desc) {
        mMessageField.setText(desc);
    }
}

public class SportActivity extends AppCompatActivity {

    final FirebaseDatabase database = FirebaseDatabase.getInstance();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sport);

        DatabaseReference ref = database.getReference();

         RecyclerView matches = (RecyclerView) findViewById(recycle_viewer);
        matches.setHasFixedSize(true);
       matches.setLayoutManager(new LinearLayoutManager(this));

        FirebaseRecyclerAdapter<Match, MatchHolder> mAdapter = new FirebaseRecyclerAdapter<Match, MatchHolder>(
                Match.class,
                android.R.layout.two_line_list_item,
                MatchHolder.class,
                ref) {
            @Override
            public void populateViewHolder(MatchHolder holder, Match match, int position) {
                holder.setName(match.getName());
                holder.setDesc(match.getDesc());
            }
        };

        matches.setAdapter(mAdapter);

    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        FirebaseRecyclerAdapter mAdapter = null;
        mAdapter.cleanup();
    }

    }

my db screenshot

Change this:
DatabaseReference ref = database.getReference();

to this:
DatabaseReference ref = database.getReference().getChild('Match');

Closing this issue as it's not a library bug.  In the future please post these kinds of questions to StackOverflow.

Thanks , next time will consider your advice about posting on StackOverflow , however the change did not work ,now i get this error "can not resolve method .getChild(java.lang.string).

@saddamuwejan I updated my answer.  It's just child().
The concept you're missing is that if you want to show a list of matches, you need to give the library a reference to the database path containing the matches.  Your current implementation passes a path to the database root.

Please be respectful when you post a question/issue and indicate when you cross-post: https://github.com/firebase/FirebaseUI-Android/issues/934

@puf why would you through such words ?. I have thanked Mr. @samtstern worked by thiere advice by posting on Stackoverflow .thiere reply here was no help to me so i replied on them so they know it was not working.Now Your words are verry bossy and unacceptable especially in such professional site!


Add monads to the library

The problem
Monads are missing: optional, result, state, reader, io, ....
Suggested solution
Add monads to the library.
In the end, nimonad will be merged with this library.
Alternatives
Leave monads in their own library.
Although, it will just duplicate the nimble task code.
Additional information

In the end, monads are currently fine in their own library.


Buffer size in function NewTFTPServer too small

Replace the 50 bytes buffer size by (64<<10) and the tftp server can receive any request size. 50 bytes is too small if the filenames included in the tftp request are very long.

Fixed by raising the buffer size to 2048, thanks for reporting.


Refactor Parquet visitor

This refactors the Parquet visitor to support #830.

Adds before and after calls that can be overridden to avoid adding field names
Makes fieldNames private

Thanks for reviewing, @aokolnychyi!
@chenjunjiedada, this should unblock your PR.