BehavioralCapacitor issue

Should this work? I've just replaced Capacitor with BehavioralCapacitor in the test from SpiceSharpTests
It's saying that the C1[v] is 10 in the second export call ...
[Test]
        public void When_LowpassRCTransientTrapezoidal_Expect_Reference()
        {
            /*
             * A test for a lowpass RC circuit (DC voltage, resistor, capacitor)
             * The initial voltage on capacitor is 0V. The result should be an exponential converging to dcVoltage.
             */
            double dcVoltage = 10;
            var resistorResistance = 10e3; // 10000;
            var capacitance = 1e-6; // 0.000001;
            var tau = resistorResistance * capacitance;

            // Build circuit
            var ckt = new Circuit(
                new BehavioralCapacitor("C1", "OUT", "0", capacitance.ToString()),
                new Resistor("R1", "IN", "OUT", resistorResistance),
                new VoltageSource("V1", "IN", "0", dcVoltage)
                );

            // Create simulation, exports and references
            var tran = new Transient("tran", 1e-8, 10e-6);
            tran.TimeParameters.InitialConditions["OUT"] = 0.0;
            IExport<double>[] exports = { new RealPropertyExport(tran, "C1", "v") };
            Func<double, double>[] references = { t => dcVoltage * (1.0 - Math.Exp(-t / tau)) };

            // Run
            AnalyzeTransient(tran, ckt, exports, references);
        }

Yes, this doesn't work (at least at the moment). The reason is that there is no general way to reverse-calculate the charges from a voltage across it from just the expression.
It is straight-forward for linear capacitors, but BehavioralCapacitors can't use that assumption... I know that LTSpice has an additional parameter for idt() that allows specifying the initial condition, but Spice#.Behavioral doesn't have this yet.

Thanks for reply

I found the issue. It should work, but the function specified is the charge and not the capacitance. I.e. You should specify
C*x
As the expression, with C = the capacitance value. x represents the voltage across the capacitor.

Yeap. It works that way. Thanks.


HydraKen ex5 solution

Name of Participant: Karan Khendry
Score: 3
Chemical Accuracy: 0.002513 mHa
Number of ansatz parameters: 4

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


iOS App: keyboard covers the URL field

I can't see the url, when the bookmark has a long description
https://user-images.githubusercontent.com/4954535/183353788-8b241200-68d1-4fc4-802c-04d70bc57cbe.mp4

Scroll down doesn’t work?

Yes, except when I add a new bookmark in Raindrop, I can't scroll down without hiding the keyboard.


legal docs not accepted as input science labs

Can't research to the next lvl, not sure if its a mod or the game, I dont see any way to use legal docs, none of my research building can accept them for process. like you mod so far. let me know what I'm doing wrong. thanks.

From the mod portal.
Seems like legal docs aren't accepted as input to labs. Will try reproduce.

Found the culprit. Needed to add legal doc to the labs input table. This will do that:
table.insert(data.raw.lab["lab"].inputs, "legal-documents")


Research how to organize multiple cameras

Entities are restricted to a single component of each type. This implies that we cannot have two cameras on an entity. Early suggestions were to let the camera be of a VR kind or make two entities, each with their own camera.

At construction of RenderManger, pass parameter if we are using VR. If we're using VR, create an additional RenderSurface and render to it as well. Render each eye separately to lower memory usage.


TextEdit Area Flickers (May be scrolls up and then down)

I really appreciate your effort for this project. Its simply awesome.
I am just trying with demo apps Large option. Steps to reproduce flicker

Select Large From List
Once screen school to bottom, press return key
Type anything, Screen Flicker
After this any return key and type same repeats

@coderrat I have been unable to produce this on any simulator devices so I am going to close this issue, I will keep my out for this issue as I am developing though in case it reappears.


Java 11 upgrade

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: phosphorbronze50:x: t11947You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

:exclamation: No coverage uploaded for pull request base (develop-2.0@c6c1985). Click here to learn what that means.
The diff coverage is n/a.

@@              Coverage Diff               @@
##             develop-2.0     #198   +/-   ##
==============================================
  Coverage               ?   73.96%
  Complexity             ?     1282
==============================================
  Files                  ?      184
  Lines                  ?     3653
  Branches               ?      382
==============================================
  Hits                   ?     2702
  Misses                 ?      769
  Partials               ?      182

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 c6c1985...696cb86. Read the comment docs.


Connection failed after installing NetworkManager

I lost SSH access to my RPI 4B during the installation process.
These were the last lines and now I can't connect to it anymore:
Download complete and in download only mode
WiFi Connect Raspbian Installer: Deactivating and disabling dhcpcd...

Searching for it on the wifi network revealed nothing (it didn't reconnect under another ip). Rebooting didn't help either. The device lost all remote accessibility that it had.

Did you resolve this?


SRS - General Cleanup

Fix the title
Add the extra section disclaimer thing
Anything else?

appendix lettering?


unable to verify the first certificate

Hi,
i tried to play with graphql service mesh / openapi, created a local service with the following openapi yaml
  swagger: '2.0'
  info:
    title: Service
    version: '1.0'
  paths:
    "/WeatherForecast":
      get:
        tags:
        - WeatherForecast
        produces:
        - text/plain
        - application/json
        - text/json
        responses:
          '200':
            description: Success
            schema:
              type: array
              items:
                "$ref": "#/definitions/WeatherForecast"
  definitions:
    WeatherForecast:
      type: object
      properties:
        date:
          format: date-time
          type: string
        temperatureC:
          format: int32
          type: integer
        temperatureF:
          format: int32
          type: integer
          readOnly: true
        summary:
          type: string

and the following meshrc.yaml
sources:
  - name: Service
    handler:
      openapi:
        source: C:\projets\smart\smart.mesh.monitoring\graphlmesh\openapi.yaml
        baseUrl: https://localhost:5001/

but got the following Graphql Error message
request to https://localhost:5001/WeatherForecast failed, reason: unable to verify the first certificate
any insight :) ?

Have you tried to do this request via curl or Postman locally?

Calling https://localhost:5001/weatherforecast with Curl or Postman works, i didnt configured SSL on my machine.
To have more context, it s just a local ASP NET core web api.

So you are using https in those calls. I am not sure it is related to Mesh. Could you create a minimal reproduction repo by any chance? Thanks!

i push a local repo there https://github.com/pascally/meshtest

I've just noticed in my local env too. Our legacy dev env I'm including in the graph runs on https locally. It'd be awesome to just tell graphql-mesh to ignore certificate verification as a local config option!

@dpnova Could you try to add environmental variable while running Mesh?
NODE_TLS_REJECT_UNAUTHORIZED=0 mesh serve

That worked @ardatan !! Will test with some queries etc now

Closing this issue since it is actually a Node flag related.


Provide the possibility to not scroll to the bottom in the terminal buffer

Is your feature request about something that is currently impossible or hard to do? Please describe the problem.
I am trying to write a plugin that displays the output from a terminal buffer in a popup. Unfortunately the terminal scrolls to the bottom before you can display it in a popup. I want it not to scroll though and let the cursor stay at the top. I've tried some hacks with an exit_cb callback function which waits for 100 milliseconds and then calls cursor(1, 1). This is a bit hacky and the terminal buffer still has to scroll all the way down until the cursor can be placed at the top.
Is there a way to just paste the content of the terminal buffer without scrolling?
Describe the solution you'd like
I am imagining a flag popupb_create or probably term_startt that inhibits the scrolling.
Describe alternatives you've considered
Maybe there is an easy way to accomplish what I need without even using a terminal buffer, but I couldn't come up with one.
Additional context
Here is my plugin https://github.com/jclsn/glow.vim/blob/master/plugin/glow.vim
A similar plugin exists for Neovim and I wanted to rewrite it for Vim.

Somehow related to https://github.com/vim/vim/issues/8822. I think, the tricky part here is that the terminal buffer is displayed in a popup window.
Minimal example:
vim9script

writefile(range(100), '/tmp/file')
const ptybuf = term_start('cat /tmp/file', {hidden: true})
const winid = popup_create(ptybuf, {
    minheight: 20,
    maxheight: 20,
    minwidth: 80,
    maxwidth: 80,
    border: []
})

Yes, it was probably not intended to do that. I couldn't find another way to get it to work though

One way to keep Vim from scrolling the terminal output in the popup is by calling popup_create() in the exit_cb of term_start():
vim9script

writefile(range(100), '/tmp/file')
var ptybuf: number

ptybuf = term_start('cat /tmp/file', {
    hidden: true,
    exit_cb: (_, _) => popup_create(ptybuf, {
        minheight: 20,
        maxheight: 20,
        minwidth: 80,
        maxwidth: 80,
        close: 'button',
        border: []
    })
})

However, now the problem is that the popup can't be scrolled, neither with the mouse nor with a popup-filter. Notice how the popup isn't focused anymore, unlike in the example above.
Here's a minimal example with a popup-filter that accomplishes scrolling using firstline:
vim9script

writefile(range(100), '/tmp/file')
var ptybuf: number

def Filter(winid: number, key: string): bool
    if key == 'q'
        popup_close(winid)
    elseif key == 'g'
        popup_setoptions(winid, {firstline: 1})
    elseif key == 'G'
        const height = popup_getpos(winid).core_height
        const nlines = line('$', winid)
        const newline = nlines >= height ? nlines - height + 1 : 1
        popup_setoptions(winid, {firstline: newline})
    elseif key == 'j' || key == 'e'
        const line: number = popup_getoptions(winid).firstline
        const newline: number = line < line('$', winid) ? (line + 1) : line('$', winid)
        popup_setoptions(winid, {firstline: newline})
    elseif key == 'k' || key == 'y'
        const line: number = popup_getoptions(winid).firstline
        const newline: number = (line - 1) > 0 ? (line - 1) : 1
        popup_setoptions(winid, {firstline: newline})
    endif
    return true
enddef

ptybuf = term_start('cat /tmp/file', {
    hidden: true,
    exit_cb: (_, _) => popup_create(ptybuf, {
        minheight: 20,
        maxheight: 20,
        minwidth: 80,
        maxwidth: 80,
        border: [],
        firstline: 1,
        filtermode: 'n',
        mappings: false,
        filter: Filter
    })
})

The filter provides the following keys:

q  -- close the popup window (works)
G -- scroll to bottom (works)
g -- scroll to top (doesn't work correctly, only after a timeout, or when pressing gg)
j -- scroll up one line (doesn't work)
k -- scroll down one line (doesn't work)

I've also tried to use win_execute(winid, "normal! \<c-e>") instead of using firstline but that doesn't work either.

@bfrg It is still scrolling for me if I take a really long markdown file. There is not really a difference actually

@bfrg Yes, this actually pops up great. For me the scrolling also works flawlessly without the filter. Probably because I use glow and not cat.

I am trying to write a plugin that displays the output from a terminal
buffer in a popup. Unfortunately the terminal scrolls to the bottom
before you can display it in a popup. I want it not to scroll though
and let the cursor stay at the top. I've tried some hacks with an
exit_cb callback function which waits for 100 milliseconds and
then calls cursor(1, 1). This is a bit hacky and the terminal
buffer still has to scroll all the way down until the cursor can be
placed at the top.
Is there a way to just paste the content of the terminal buffer
without scrolling?

Why are you using a terminal buffer?  If you just want to grab the
output of a shell command there are several other ways.
For example, use job_start() and write the output to a buffer:
"out_io": "buffer"

Describe the solution you'd like
I am imagining a flag popupb_create or probably term_startt
that inhibits the scrolling.

The terminal buffer has very specific behavior, aimed at interacting
with the terminal.  Blocking scrolling sounds like a great way to
introduce new problems, that will then require users to read that they
are doing it wrong.  I rather avoid adding options that cause trouble.

Describe alternatives you've considered
Maybe there is an easy way to accomplish what I need without even
using a terminal buffer, but I couldn't come up with one.

If you say what you are trying to do then maybe someone has an idea.
--
hundred-and-one symptoms of being an internet addict:
49.
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

Why are you using a terminal buffer?  If you just want to grab the output of a shell command there are several other ways.
For example, use job_start() and write the output to a buffer: "out_io": "buffer"

I'm not the author but I had a discussion with him in the #vim channel last week.
He needs the terminal buffer because he also wants to capture the colors of the output. That's the whole point of his plugin. But the colored output is lost when using job_start(), unless the command provides some --color=always option, or alternatively, using the pty option in job_start(). In either case he will have to parse the terminal escape codes manually and convert them to text-properties (or similar) to get the same effect. This is quite cumbersome.
I think there are use cases when writing to a terminal buffer is more useful, even if there's no interaction with the terminal through stdin.

@brammool Yeah, I also think that using a terminal buffer is probably not the best solution. I'd appreciate one that works better, but I did not know how. @bfrg Tried working something out without it and it did not work. I am not proficient enough in Vimscript to find a better solution. For now it works great apart from the cursor not being at the top after the buffer opened.

@brammool So I have two use cases for this now. You said that there was a way to do this with background jobs? How?
What is crucial for me is that all the terminal output is pasted into Vim with the right color codes etc. It has to look exactly as in the terminal.


Modularize the codebase to make things more easily composable

Description
The current codebase is not very configurable. We have some use cases (entreprise fork or test mocks) where we should be able to replace entire components with another and add an extra functionality (for example TLS reports in the sidebar).
We should write a MADR to explain how we'll proceed and then refactor the codebase to make this work.

https://github.com/Kong/kong-mesh-gui/pull/135


create migration in subdirectory

I would use the following file structure for migration
<root>
   /migrations
     /v1.0.0
<PHONE_NUMBER>3943_users-table.js
<PHONE_NUMBER>4944_session-table.js
    /v1.0.1
<PHONE_NUMBER>1002_posts-table.js
<PHONE_NUMBER>9377_comments-table.js

Why?

I have about 100 migrations, store them as a flat list is not convenient.

Currently Knex requires all migrations to be added to a single directory.

https://github.com/tgriesser/knex/blob/6bcceb4f49bbab26bd1828b0c30120fd775fab46/src/migrate/index.js#L104
If you are reading to use a recursive directory, then it will solve my problem

Well I'm not sure about the general use case, but I typically have a folder in my migrations called helpers or similar, which contains custom functionality shared between my migrations.
This would break any existing projects using this file structure.

The fact is that I have too much migration files


Macro makes trouble

Hi. Im jusing GSE alot. Lately when im using my macros, they suddenly stop working, and i cant even click my spells manually. I have to reload/relog to fix this... Is this a macro problem or a addon problem?

Neither it’s a WoW problem caused by something else in your UI.  GSE locking up is caused by your spells and actions locking up.
TimothyLuke

On 7 May 2020, at 9:17 pm, Strom98<EMAIL_ADDRESS>wrote:

Hi. Im jusing GSE alot. Lately when im using my macros, they suddenly stop working, and i cant even click my spells manually. I have to reload/relog to fix this... Is this a macro problem or a addon problem?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Do you know a fix for it?

YOu need to work throught your addons and determine the cause.

This is also happening to me, however, it doesn't happen when GSE is not installed, so I figure it's actually gse causing it.

Then the answer is simple - fix your macro.
TimothyLuke

On 8 Jun 2020, at 11:18 am, woodyafortunato<EMAIL_ADDRESS>wrote:

This is also happening to me, however, it doesn't happen when GSE is not installed, so I figure it's actually gse causing it.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.

  That leaves that there is something different between what I have and what you have in one of two areas:  macro and items.
  I can’t code around you having a bad macro.
As an example for a place to look, In Legion there was a piece of shaman follower loot that had the same name as a shaman spell.  If you were a shaman and had that piece of loot in your bag and you tried to use the spell in a macro, the follower item menu would open instead.  There will be some combination of your macro and the gear you have (or don’t have) that causes this.  Unless you figure out what that is I can’t solve your problem.  It all comes down to fixing your macro and I can’t do that via telepathy.

Reply to this email directly, view it on GitHub, or unsubscribe.

I am having this problem and it took me 2 days to find out why and it turns out to be GSE.
I ran through all my addons starting from scratch after an interface reset and things started breaking once GSE was installed.
You mention it is because the macro is broken, which may very well be true as I had this problem only on hunters (level 90, took out heart essence). Turned out to be Elfau's 8.3 BM macro: https://wowlazymacros.com/t/elfyaus-8-3-beast-master-macro-updated-28-aug-20/8221
Now you point at the macro for causing this but please look at your code as well. This bug does not just lock up your macro, it prevents your character from using any skills and items.. you can't even auto attack because of this.
I created a vid to showcase what happens if GSE locks up: https://www.youtube.com/watch?v=ZWbwHSVC87I
It pretty much comes down to:

Everything is fine and you can attack
GSE breaks
You can now no longer cast spells  or use items
You can't auto attack anything (right clicking a mob does nothing, you can do /startattack but that is the only way to trigger auto attacks)

This is not a macro problem, this is a bad exception handling problem and should be fixed.

I appreciate what you are saying. You can cause the problem by creating a normal macro with /cast Heart Essence.  It’s an underlying WoW issue.
GSE doesn’t actually DO anything.  It just manages a list of macro lines and asks WoW’s macro engine to please try this line. It has no way of determining success or failure of an action.  As it runs in WoW’s combat sandbox it is explicitly denied access to the parts of the API that would allow it to determine that.  It’s also explicitly denied access to a lot of the exception handling because that is all outside the combat sandbox.  Essentially the combat sandbox has a list of 14 or so functions that a mod can call and are essentially simple math. The exception handling we both would like to be able to do would then mean that GSE couldn’t execute any macro.  When the macro is written the command is valid.  And even though you don’t have a HoA it is still
Valid.  It’s only at execution that there is an issue however by execution it’s too late to adjust the macro.
Macro Variables (#691) does however provide a macro authors a means of working around this however it does require the macro author to be aware of this.  They can create a variable of say HE. And put that as a single line in the macro with something similar to this as the value for that variable
function () if UnitLevel("player") > 110 then return "/cast Heart Essence" end end
If the player is > 110 then insert the cast heart essence line but if not don’t do anything on this line.
This function could also check if HoA was equipped or active.  As it runs outside of combat and prepares the macro for execution its feasible.  It’s also reusable for whatever creates this kind of an issue with Shadowlands next week.
TimothyLuke

On 2 Oct 2020, at 3:03 am, Feint90<EMAIL_ADDRESS>wrote:

I am having this problem and it took me 2 days to find out why and it turns out to be GSE.
I ran through all my addons starting from scratch after an interface reset and things started breaking once GSE was installed.
You mention it is because the macro is broken, which may very well be true as I had this problem only on hunters (level 90, took out heart essence). Turned out to be Elfau's 8.3 BM macro: https://wowlazymacros.com/t/elfyaus-8-3-beast-master-macro-updated-28-aug-20/8221
Now you point at the macro for causing this but please look at your code as well. This bug does not just lock up your macro, it prevents your character from using any skills and items.. you can't even auto attack because of this.
I created a vid to showcase what happens if GSE locks up: https://www.youtube.com/watch?v=ZWbwHSVC87I
It pretty much comes down to:
Everything is fine and you can attack
GSE breaks
You can now no longer cast spells or use items
You can't auto attack anything (right clicking a mob does nothing, you can do /startattack but that is the only way to trigger auto attacks)
This is not a macro problem, this is a bad exception handling problem and should be fixed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


Fixed #17637 -- Client side validation classes for forms

Hi!
This PR tries to resolve an old ticket
I didn't understand if the expected work is just add the HTML5 pattern attr field or add a more 'generic' class to support multiple custom attrs, if that would be the case I can keep working on that!
Regarding to the Łukasz Rekucki's comment I think we don't need a fallback, as pattern is well supported now: https://caniuse.com/input-pattern
I have one concern: HTML5 pattern does a re.fullmatch and our RegexValidator does a re.search instead. Should I create a new Validator?
To run the specific test: ./runtests.py tests.forms_tests.field_tests.test_charfield.CharFieldTest.test_charfield_pattern

Closing as per ticket.


Added Wiki Easy Search Functionality

Will adding Wiki Search interfere with the simplicity of this extension? If not we can add it.
Feature Screenshot: https://cloud.githubusercontent.com/assets/4470223/12871801/f00c5574-cdb1-11e5-8125-d605e0c4be14.png

@bkarthikeyan28  Awesome feature! Thanks


Issue with "rc_alloc_filter_from_arrays".

Within file "rc_filter.c", within function "rc_alloc_filter_from_arrays".
Both the arrays for numerator and denominator initialize to the same length, no matter what is passed into the function.  The problem is that some functions will later require the relative degree of the transfer function to work properly.  But if the TF is formed with this function, it will always have a relative degree of exactly zero, which is not always accurate.
Current code:
if(unlikely(rc_vector_from_array(&f->num,num,order+1))){
fprintf(stderr,"ERROR in rc_alloc_filter_from_arrays, failed to alloc vector\n");
return -1;
}
if(unlikely(rc_vector_from_array(&f->den,den,order+1))){
fprintf(stderr,"ERROR in rc_alloc_filter_from_arrays, failed to alloc vector\n");
rc_free_vector(&f->num);
return -1;
}

Also, the error checking should be the same between "rc_alloc_filter_from_arrays" and "rc_alloc_filter".

fixed in v0.4.0 commit 96f388d8b66fe7439b0a102d9370fd84c400c95e


Update New-LabelPolicy.md

OutlookDefaultLabel & DisableMandatoryInOutlook advanced settings now supported for built-in labeling

Docs Build status updates of commit 1a5ac69:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/New-LabelPolicy.md
:white_check_mark:Succeeded
View (exchange-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


Don't warn user about unknown block versions

Currently users are warned via the UI, if >50 of the last 100 blocks have an unknown version.
Given that there are softforks in progress, which haven't activated yet, this message may reach the user and create confusion, so it's removed for now.

UTAck.  Thanks dude.


ARTEMIS-1925 - allow redistribution with loadbalance type of OFF to e…

…nsure local consumers get priority, we only optionally redistribute when messages are stuck

-1 This is Symantec breaking change for an existing setting and behavour, e.g. im using OFF to ensure redistribute never occurs, regardless. it should never redistribute.

e.g. im using OFF to ensure redistribute never occurs, regardless. it should never redistribute.
in my reading of the code and doc, this is just a broken assumption.
disable redistribution by not enabling redistribution.

redistribution is a solution to the problem of stuck messages due to early load balancing at routing time.
what is nice is that it is separate and it can have a binary behaviour.
5.x has deceaseNetworkConsumerPriority that biases towards local consumers. enabling redistribution can make such a feature binary (and better) when combined with no loadbalancing on initial routing.
ON_DEMAND is like STRICT when there are remote consumers, if we only want to go remote when we have stuck messages, then redistribution is the nice answer.
this change makes that possible by extending what is there in a natural way.
the change in semantic, that needs to be communicated for sure, but it need not be a blocker.
the real semantics are in the code and test and git history, all the tests are fine with this change and the new test verifies it.

I think it should be a blocker. Especially when theres an alternative option thats easily to implement and avoids a break change that is simply adding an additional config option for the new semantic/behaviour

wha do you suggest in terms of configuration? to my mind more configuration in this area is more confusion.

as config: redistribution-delay-when-load-balance-type-off with default -1, it just does not make sense. It is mixing two things. I just don't think the breaking case is worth protecting, just don't enable redistribution-delay if you don't want redistribution.
is there more to it than that?

the issue is loadbalancing and redistribution was intertwined, e.g. most of the time the reason for loadbalancing was in cluster setup and in that scenario you wanted redistribution to occure, its why the other settings such as ON DEMAND also have an effect

The same basic thing was attempted here:
https://github.com/apache/activemq-artemis/pull/2893
I for one would really welcome this change, weather it's a separate option or the default behavior. I see a lot of excessive "forwarding" caused by ON_DEMAND when the feature I am really after is just the redistribution.
Br,
Anton

@michaelandrepearce re: "the issue is loadbalancing and redistribution was intertwined" is exactly the problem, they should be separate and I want to fix that. Not make it more complicated, simplify. They are already separately configured but intertwined in code. This is a perfect release note . If it is a problem for some existing broken config, then there is existing config that can sort the problem.

I understand you want to do something here, but i still hold strongly especially as no need to break existing setups, can start brining new config values in and mark old as deprecated, and add your new logic onto that new config.

the "break existing setups" is actually "point out existing broken setups", and I think the existence of such configs is likely to be small. I say that b/c redistribution is enabled (non default) but won't be in play due to the load balance policy. With redistribution being configured, if it now kicks in it will be just a 'fix'.
I agree in general, but in this specific case, new config won't make thinks better. The existing config being mixed up is the problem.
the problem I have is what to use for new config names, it just does not make sense to me. What do you suggest?

OFF_DEMAND? It then follow the ON_DEMAND, where LB is on, and distribution is demand based.

I really think this is a step in the wrong direction, but I will go with OFF_WITH_DISTRIBUTION, which make redistribution conditional on loadbalance type ON_DEMAND or OFF_WITH_DISTRIBUTION && redistribution-delay > 0
To my mind, load balancing happens at routing time,  redistribution on a queue with stuck messages. They should be independent. Maybe for 3.0 we can resolve this :-)

There is a new load balance type - OFF_WITH_REDISTRIBUTION that ensures local consumers get priority, ie: no forwarding on initial routing, but the potential to redistribute if configured

@michaelandrepearce can you close the loop on this one, thanks!

@gtully should be ok to merge now.


Parser Error: Native class "TTS" cannot be constructed as it is abstract.

Godot version
4.1 and 4.2
System information
Manjaro Linux,  Intel i5, NVIDIA GeForce GTX 1060 3GB, Vulkan
Issue description
I tried to implement this Custom modules in C++ and this Binding to external libraries.
The first one is working fine.  But Binding to external libraries it's not.
I tried in 4.2 and 4.1, on both appears the error.
It's a simple project with only a Node2D and a child Sprite2D.
I created a simple lib instead of using TTS.
When i call TTS.new() appears: Parser Error: Native class "TTS" cannot be constructed as it is abstract.
GDScript
func _ready():
	var s = Summator.new()
	s.add(10)
	print(s.get_total())
	print('is_spoken: ', TTS.say_text())
	s.reset()
	# var x = TTS.new() !!!! ERROR HERE !!!! - Parser Error: Native class "TTS" cannot be constructed as it is abstract.

When i remover the line TTS.new() it works.
Output:
Godot Engine v4.2.beta.custom_build.6afd32098 - https://godotengine.org
Vulkan API 1.2.175 - Forward Mobile - Using Vulkan Device #0: NVIDIA - NVIDIA GeForce GTX 1060 3GB

10
is_spoken: 123

I tried to debug but I'm a cpp noob and my breakpoint don't stop in the line:
file: modules/gdscript/gdscript_analyzer.cpp

push_error(vformat(R"(Native class "%s" cannot be constructed as it is abstract.)", base_native), p_source);

it's weird, because few lines before the breakpoint stops and show my class data TTS apparently correct:

} else if (p_is_constructor && !ClassDB::can_instantiate(base_native)) {

it's like it don't stops in push_error()

Steps to reproduce
The Custom modules in C++ is equal tutorial.
The Binding to external libraries is different. Bellow I show how I did.
The libFirst.a also is in my /usr/local/lib/.
folder structure godot/modules/tts
tts
 | libpath/
 |   ` libFirst.a
 | src/
 |   ` include/
 |   |  ` Unidade.h
 |   ` Unidade.cpp
 | config.py
 | register_types.cpp
 | register_types.h
 | SCsub
 | tts.cpp
 | tts.h

Unidade.h
#ifndef UNIDADE_H
#define UNIDADE_H

class Unidade {

public:
    static int returnaUmDoisTres ();
};

#endif

Unidade.cpp
#include "Unidade.h"

int Unidade::returnaUmDoisTres () {
    return 123;
}

config.py
def can_build(env, platform):
    return True

def configure(env):
    pass

register_types.cpp
#include "register_types.h"
#include "core/object/class_db.h"
#include "tts.h"

void initialize_tts_module(ModuleInitializationLevel p_level) {
	ClassDB::register_class<TTS>();
}

void uninitialize_tts_module(ModuleInitializationLevel p_level) {
	// Nothing to do here in this example.
}

register_types.h
#include "modules/register_module_types.h"

void initialize_tts_module(ModuleInitializationLevel p_level);
void uninitialize_tts_module(ModuleInitializationLevel p_level);

/* yes, the word in the middle must be the same as the module folder name */

I don't know why, but in the godot tutorial they use void register_tts_types(); and void unregister_tts_types(); in the files register_types.h and register_types.cpp.
But it doesn't compile. I recieved the error: modules/register_module_types.gen.cpp:181:9: error: 'initialize_tts_module' was not declared in this scope; did you mean 'initialize_tga_module'?.
So I started to use void initialize_tts_module(ModuleInitializationLevel p_level); and void uninitialize_tts_module(ModuleInitializationLevel p_level);.

I tried to use both register_tts_types and initialize_tts_module, but TTS.new() still didn't work .

SCsub
Import('env')

env_tts = env.Clone()
env_tts.add_source_files(env.modules_sources, "*.cpp") # Add all cpp files to the build

env_tts.Append(CPPPATH=["src/include"])

env.Append(LIBPATH=['libpath'])
env.Append(LIBS=['First'])

tts.cpp
#include "tts.h"
#include <Unidade.h>

int TTS::say_text() {
    return Unidade::returnaUmDoisTres();
}

int TTS::flow() {
    return _flow;
}

void TTS::_bind_methods() {
	ClassDB::bind_static_method("TTS", D_METHOD("say_text"), &TTS::say_text);

	ClassDB::bind_method(D_METHOD("flow"), &TTS::flow);
}

TTS::TTS() {
    _flow = 10;
}

tts.h
#ifndef GODOT_TTS_H
#define GODOT_TTS_H
#include "core/object/ref_counted.h"

class TTS : public RefCounted {
	GDCLASS(TTS, RefCounted);

	int _flow;
protected:
	static void _bind_methods();

public:
	static int say_text();
	int flow();
	TTS();
};

#endif

Minimal reproduction project
godot.project.zip
test.zip
Build the libFirst.a, bind the libFirst.a in a module called tts.
Just start the project and run the scene.

Does it work if you do:
#include "register_types.h"
#include "core/object/class_db.h"
#include "tts.h"

void initialize_tts_module(ModuleInitializationLevel p_level) {
    if (p_level != MODULE_INITIALIZATION_LEVEL_SCENE) {
        return;
    }
    ClassDB::register_class<TTS>();
}

void uninitialize_tts_module(ModuleInitializationLevel p_level) {
	// Nothing to do here in this example.
}

You are registering the class several times in your code

It's working!
Thank you. I made the change and started to work.
Can I change the documentation of these Binding to external libraries to add code you show here ?

Another question. Why can't I return Unidade in to GDScript ? Does it needs to extend some Variant or Object or RefCount to be able to create a instance inside GDScript? Why?
And again, thank you very much!

The code there is out of date as it doesn't include the proper method as you discovered above, should be updated

Another question. Why can't I return Unidade in to GDScript ? Does it needs to extend some Variant or Object or RefCount to be able to create a instance inside GDScript? Why?

It needs to extend Object or RefCounted, that's the only way you can connect them

I think the documentation of writing-custom-unit-tests  - custom modules in cpp is outdated too.
I tried to implement this tutorial too and didn't work.

Create a new directory named tests/ under your module's root.
Create a new test suite: test_summator.h.
Write some test cases
Compile the engine with scons tests=yes

It just don't run the test when I execute ./bin/godot.linuxbsd.editor.x86_64 --test --source-file="*test_summator*" --success --verbose:
[doctest] doctest version is "2.4.11"
[doctest] run with "--help" for options
===============================================================================
[doctest] test cases: 0 | 0 passed | 0 failed | 838 skipped
[doctest] assertions: 0 | 0 passed | 0 failed |
[doctest] Status: SUCCESS!
WARNING: ObjectDB instances leaked at exit (run with --verbose for details).
     at: cleanup (core/object/object.cpp:2207)

I tried to use different filters but don't find the file.
--test-suite | -ts | -ts="*[EXAMPLE]*"
--test-case | -tc | -tc="*[EXAMPLE]*"
--source-file | -sf | -sf="*EXAMPLE*"

Don't work, I think some SCsub need to be changed, but I don't know.

So I tried to ADD to summator module folder modules/summator/tests/test_summator.h,
#include "tests/test_macros.h"
#include "modules/summator/summator.h"

namespace TestSummator {

TEST_CASE("[Modules][Summator] Adding numbers") {
	Ref<Summator> s = memnew(Summator);
	CHECK(s->get_total() == 0);

	s->add(10);
	CHECK(s->get_total() == 10);

I change modules/summator/SCsub to add tests files:
Import('env')

env.add_source_files(env.modules_sources, "*.cpp") # Add all cpp files to the build

if env["tests"]:
    env.Append(CPPDEFINES=["TESTS_ENABLED"])
    env.add_source_files(env.modules_sources, "./tests/*.cpp")

And Work! But it's too slow.
===============================================================================
[doctest] test cases: 1 | 1 passed | 0 failed | 838 skipped
[doctest] assertions: 5 | 5 passed | 0 failed |
[doctest] Status: SUCCESS!

--- scons ---
[ 95%] Compiling core/input/default_controller_mappings.gen.cpp ...
[ 99%] progress_finish(["progress_finish"], [])
[100%] Linking Program bin/godot.linuxbsd.editor.x86_64 ...
[100%] scons: done building targets.
[Time elapsed: 00:11:12.407]

It LINK the entire engine every time I change the test. I believe it happens because of the SCsub change in env.
[100%] Linking Program bin/godot.linuxbsd.editor.x86_64 ...
[100%] scons: done building targets.
[Time elapsed: 00:02:09.532]

So I tried to Add to TTS, and put the change only for my  env_tts:
modules/tts/SCsub
Import('env')

env_tts = env.Clone()
env_tts.add_source_files(env.modules_sources, "*.cpp") # Add all cpp files to the build

env_tts.Append(CPPPATH=["src/include"])

env.Append(LIBPATH=['libpath'])
env.Append(LIBS=['First'])

if env_tts["tests"]:
    env_tts.Append(CPPDEFINES=["TESTS_ENABLED"])
    env_tts.add_source_files(env.modules_sources, "./tests/*.cpp")

I create modules/tts/tests_tts.h
And when I execute scons platform=linuxbsd tests=yes
Checking for C header file mntent.h... (cached) yes
scons: done reading SConscript files.
scons: Building targets ...
[  8%] Generating modules tests header.
[ 99%] progress_finish(["progress_finish"], [])
[100%] Compiling tests/test_main.cpp ...
In file included from ./modules/tts/tests/test_tts.h:6,
                 from ./modules/modules_tests.gen.h:1,
                 from tests/test_main.cpp:128:
./modules/tts/tts.h:7: fatal error: Unidade.h: No such file or directory
    7 | #include <Unidade.h>
      |
compilation terminated.
scons: *** [tests/test_main.linuxbsd.editor.x86_64.o] Error 1
scons: building terminated because of errors.
[Time elapsed: 00:00:11.060]

It can't find Unidade Inside modules/tts/tts.h and modules/tts/tts.cpp
#ifndef GODOT_TTS_H
#define GODOT_TTS_H

#include "core/object/ref_counted.h"
#include <Unidade.h>

class TTS : public RefCounted {
	GDCLASS(TTS, RefCounted);

	Unidade unidade_;

protected:
	static void _bind_methods();
...

When I remove test_tts.h and run  scons platform=linuxbsd tests=yes it compiles perfectly, but I don't have tests for Unidade anymore.
scons: Building targets ...
[  8%] Generating modules tests header.
[100%] progress_finish(["progress_finish"], [])
[100%] Compiling tests/test_main.cpp ...
[100%] scons: done building targets.
[Time elapsed: 00:02:08.551]

I just want to unit test fast my custom module and use Godot hash_set, hash_map inside my Unidade. 2 Minutes for each compilation and don't be able to test it's kinda sad.

I tried to use another STL (EASTL) library and GTEST in a custom module, it is fast to compile and run tests, but was very hard to bind with godot.

STL and Unit Tests fast. How?

Thank you, if you read until here.

I create this pull-request to update the documentation of binding to external libraries
But writing-custom-unit-tests - custom modules in cpp I didn't change.
How to improve this section? Do I need to create another issue?

Closed by https://github.com/godotengine/godot-docs/pull/8407. Thanks for contributing! Feel free to open a separate PR for writing-custom-unit-tests.


Set up Universe 16 board & critical path

Description
Set up sprint board and issues as well as setup critical path
Tasks

[x] Create new project board by copying previous project board.
[x] Setup critical path.
[x] Add "Navigation" note to kanban board.
[x] Add "Finances" note to kanban board.
[x] Add "Focus and Business KPI's" note to kanban board.

Reference(s)

Done


tor: fix parsing replies

Replies may contain quoted values that include spaces, newlines and/or escaped characters (including doublequote itself). Not accounting for that leads to errors when e. g. COOKIEFILE path contains spaces.
Change Description
https://github.com/lightningnetwork/lnd/issues/1697#issuecomment-487238128
Steps to Test

Configure Tor to store the cookie in a directory path to which contains spaces
Run the current version, it'll crash
Build the package with this patch applied, it'll run successfully

Pull Request Checklist
Testing

[ ] Your PR passes all CI checks.
[x] Tests covering the positive and negative (error paths) are included.
[x] Bug fixes contain tests triggering the bug to prevent regressions.

Code Style and Documentation

[x] The change obeys the Code Documentation and Commenting guidelines, and lines wrap at 80.
[x] Commits follow the Ideal Git Commit Structure.
[x] Any new logging statements use an appropriate subsystem and logging level.
[ ]  There is a change description in the release notes, or [skip ci] in the commit message for small changes.

📝 Please see our  Contribution Guidelines for further guidance.

Done :)

needs a rebase

Rebased.


Create cccs.txt

cccs.edu is already part of the master branch, but new student emails have student.cccs.edu instead of just cccs.edu

although it is mentioned that sub-domains work with the same upper-level domain, I am still unable to use my student.cccs.edu email

@Jxshed I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host cccs.student.edu not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


added /proc//net/snmp

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
Attention: Patch coverage is 93.92857% with 51 lines in your changes missing coverage. Please review.

Project coverage is 92.14%. Comparing base (dfba048) to head (ec9e6ed).
Report is 1 commits behind head on main.

Files
Patch %
Lines

src/process_net_snmp.rs
94.04%
32 Missing :warning:

src/process_netstat.rs
93.95%
18 Missing :warning:

src/utils.rs
80.00%
1 Missing :warning:

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #28      +/-   ##
==========================================
+ Coverage   91.77%   92.14%   +0.36%
==========================================
  Files          23       24       +1
  Lines        2797     3334     +537
==========================================
+ Hits         2567     3072     +505
- Misses        230      262      +32

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Consider supporting :content-type and :accept request keys

This could help with automatic coercion of :body params for example similar to what clj-http does when submitting something like :content-type :json

clj-okhttp considers the "Content-Type" header of the request when encoding the body. I think it's a mistake to support the option in two different places (though I realize it would provide better compatibility with clj-http). Similarly, if you want to set an accept header, why not just set a "Accept" header.

@RutledgePaulV , I think that's fair and I agree (though it's a bit more painful to type):
(http/post "feh" {:content-type :json :accept :json :body {}})

vs
(http/post "feh" {:headers {"content-type" "application/json; charset=utf-8;"
                                            "accept" "application/json; charset=utf-8;"
                            :body {}})

I'll close this.


D3testing

Fixes multi-selection error on graph; now only selects latest bill submitted by current user.

I made some changes mostly style in the javascript and I removed the text with the amount since it was hanging off the user bill. We can figure out how to put text on the user bill in another pull request. If you are ok with these changes let me know and I'll merge it in.

Sounds good. Move it in.


Add optional module for performance measurements

Introduce an optional performance module that add performance measurements to core GLSP concepts.
Performance is simply measured using console.time which also allows inspection of the tracked events in the dev tools trace viewer
The module is opt-in and disabled by default. To enable it the &performance=true query parameter has to be added to the url

@ivy-cst @ivy-lli FYI

@ivy-cst @ivy-lli FYI: I have rebased this branch on the latest master


addon: seems to be missing 'addon name' field

What happened?
The addon resource appears to rely on metadata.name to provide the addon name to aws api. This will work if a managed resource is created manually and no other additional instance of the addon needs to exist in the cluster. But if you need to create multiple addons of the same type or are using Composition that wants to make metadata.name unique, this is a blocker.
How can we reproduce it?
Create a addon via composition and see the error.
    - name: cluster-csi-driver
      base:
        apiVersion: eks.aws.upbound.io/v1beta1
        kind: Addon
        metadata:
          name: aws-ebs-csi-driver
        spec:
          forProvider:
            addonVersion: "v1.11.4-eksbuild.1"
            clusterNameSelector:
              matchControllerRef: true
            region: us-west-2
            serviceAccountRoleArnSelector:
              matchControllerRef: true
              matchLabels:
                role: nodegroup

Message:               apply failed: error creating EKS Add-On (nate-demo-again-mksgm-t459x:nate-demo-again-mksgm-k8rtp): InvalidParameterException: Addon specified is not supported

What environment did it happen in?

Universal Crossplane Version: 1.10.x
Provider Version: 0.20.0
EKS v1.23 cluster

Hi @natereid72,
Looks like what happens is Crossplane overrides the metadata.name that the composed template specifies in the Compositions. But my assumption is that you need to choose an addon name from a predefined set by EKS.
I would suggest to utilize the external-name annotation in this case. Could you please give a try to something like:
- name: cluster-csi-driver
      base:
        apiVersion: eks.aws.upbound.io/v1beta1
        kind: Addon
        metadata:
          annotations:
            crossplane.io/external-name: aws-ebs-csi-driver
        spec:
...

@ulucinar I think this is one of the cases where it should be left as spec field instead of using external name since metadata.name would never be the right value.

my suggestion is:
spec:
  forProvider:
    addon:
      name:
      version:

We had an offline chat with @natereid72, and I will provide more context in this issue discussing some possibilities.

Hello,
I'm experiencing something similar. In my composition the name of the resource should be unique and with the current CRD it is not something I can do.
Is there any update on that?
Thanks

@muvaf any workaround for this issue? Facing similar issue for other resources as well which are currently relying on metadata.name. For e.g., cloudwatchlogs.Group

@natereid72 - any plan of getting this issue resolved in upcoming releases?

@bhavinkotak , you'd have to check with someone else. I don't have any involvement in the project planning. Last I knew, it was a bit of 'painted into a corner' issue. Not implemented in the best way, but implemented. Which will result in a breaking change to the provider as a CRD needs to be modified.

Hi @bhavinkotak,
You can make use of the external-name annotation as a remedy:
apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
  annotations:
    crossplane.io/external-name: vpc-cni
  name: addon1
spec:
  forProvider:
    clusterNameSelector:
      matchLabels:
        testing.upbound.io/example-name: cluster1
    region: us-west-1

---

apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
  annotations:
    crossplane.io/external-name: vpc-cni
  name: addon2
spec:
  forProvider:
    clusterNameSelector:
      matchLabels:
        testing.upbound.io/example-name: cluster2
    region: us-west-1

So the above two resources have different metadata.names, whereas the same crossplane.io/external-name annotations. They both install the vpc-cni addon to two different clusters.
Could you please give this a try?

@ulucinar I have a semi-related question about this. I've defined an Addon in my Composition similar to what you provided above:
    - name: eks-addon-vpc-cni
      base:
        apiVersion: eks.aws.upbound.io/v1beta1
        kind: Addon
        metadata:
          annotations:
            crossplane.io/external-name: vpc-cni
        spec:
          deletionPolicy: Delete
          forProvider:
            addonVersion: "v1.12.1-eksbuild.2"
            clusterNameSelector:
              matchControllerRef: true
            resolveConflicts: "OVERWRITE"

I can confirm that the Addon was successfully installed on my target cluster but I noticed that the MR eventually registers as SYNCED = false:
NAME                 READY   SYNCED   EXTERNAL-NAME   AGE
ahouse-sx7ks-ld9gk   False   True     vpc-cni         26m

NAME                 READY   SYNCED   EXTERNAL-NAME   AGE
ahouse-sx7ks-ld9gk   True    True     vpc-cni         27m

NAME                 READY   SYNCED   EXTERNAL-NAME   AGE
ahouse-sx7ks-ld9gk   True    False    vpc-cni         30m

When I describe the MR, I see the following:
  Conditions:
    Last Transition Time:  2023-02-06T21:27:35Z
    Message:               observe failed: cannot run plan: plan failed: Instance cannot be destroyed: Resource aws_eks_addon.ahouse-sx7ks-ld9gk has lifecycle.prevent_destroy set, but the plan calls for this resource to be destroyed. To avoid this error and continue with the plan, either disable lifecycle.prevent_destroy or reduce the scope of the plan using the -target flag.
    Reason:                ReconcileError
    Status:                False
    Type:                  Synced
    Last Transition Time:  2023-02-06T21:27:14Z
    Reason:                Available
    Status:                True
    Type:                  Ready
    Last Transition Time:  2023-02-06T21:26:48Z
    Reason:                Finished
    Status:                True
    Type:                  AsyncOperation
    Last Transition Time:  2023-02-06T21:26:48Z
    Message:               apply failed: unexpected EKS Add-On (ahouse-sx7ks-hw64l:vpc-cni) state returned during creation: timeout while waiting for state to become 'ACTIVE' (last state: 'CREATING', timeout: 20m0s)
[WARNING] Running terraform apply again will remove the kubernetes add-on and attempt to create it again effectively purging previous add-on configuration:
    Reason:  ApplyFailure
    Status:  False
    Type:    LastAsyncOperation

Can you help me understand what I might be doing wrong here?

@adamhouse Seems strange, but can you verify that vpc-cni addon is recognized by aws in your account? According to the terraform module documentation:

The name must match one of the names returned by describe-addon-versions.

Thus you should check with:
aws eks describe-addon-versions --query='addons[].addonName'

FWIW, I came across the same (i.e. original) issue with aws-ebs-csi-driver while trying to get persistent volumes working on a vanilla cluster provisioned with  upbound/platform-ref-aws. Applying the following fix (thanks @ulucinar for the tip!) moves the needle a bit, but is not sufficient due to additional policy that needs to be attached to the instance node role.
apiVersion: eks.aws.upbound.io/v1beta1
kind: Addon
metadata:
  annotations:
    crossplane.io/external-name: aws-ebs-csi-driver
  name: fix1--add-ebs-csi
spec:
  forProvider:
    clusterNameSelector:
      matchLabels:
        crossplane.io/claim-name: platform-ref-aws
    region: us-west-2

checkout the following reference implementation https://github.com/upbound/platform-ref-aws/pull/97 - thanks for rasing the issue


Demo source doesn't work well on the latest version of vee-validate

Hi, Dave
This is Song again~ ^-^
Last week I was mentioned the question about demo source does not work well with the latest version of vee-validate.
https://github.com/davestewart/vee-element/issues/3
I think I found an easy way to solve the problem Cannot read property 'i18nDriver' of undefined for demo source like this:
import VeeValidate from 'vee-validate'

// import the vue
import Vue from 'vue'

const Validator = VeeValidate.Validator

const validations = {}

const options = {}

// install veevalidate first
Vue.use(VeeValidate)

export default new VeeValidate.Validator(validations, options)

Validator.extend('picked', {
    validate (data, args) {
        const min = Number(args[0])
        const max = Number(args[1])
        const valid = args.length === 1
            ? data.length >= min
            : data.length >= min && data.length <= max
        return {
            valid,
            data
        }
    },
    getMessage (field, params, value) {
        const [min, max] = params
        return params.length === 1
            ? `The {field} field requires at least ${min} item${min > 1 ? 's' : ''}`
            : `The {field} field requires between ${min} and ${max} items`
    }
})

but I'm not sure it's a good way to solve it.
So, is there a suggestion?
Thank you!

Hey Song,
I think you may be on the right track.
I'm sorry that I haven't found time to look at this yet, I would like to get it solved quickly!
It should be solved this week :)


Need doc for PPL count by span function [DOC]

What do you want to do?

[ ] Request a change to existing documentation
[ X] Add new documentation
[ ] Report a technical problem with the documentation
[ ] Other

Tell us about your request. Provide a summary of the request.
Olly generated a query including the stats span function (stats count() by span(memory, 100000)) -- which seems to work --, but I can't find any documentation on count/span in the stats section or anywhere else in the PPL documentation.
*Version: List the OpenSearch version to which this issue applies, e.g. 2.14, 2.12--2.14, or all.
2.15
What other resources are available? Provide links to related issues, POCs, steps for testing, etc.

@anirudha - Who can help document this? Thanks.


Ego vehicle loses control after setting light status

I am adding a WaypointFollower behavior for the ego vehicle to a parallel root in my scenario.
I have a light_sequence for changing  the ego vehicle light status that includes:

checking if distance between ego and other vehicle is below a threshold using: InTriggerDistanceToVehicle
Then, change the ego vehicle lights status using a new atomic behavior that I have defined

I add the light_sequence as a child to the parallel root.
However, as soon as the ego lights status change, the ego vehicle WaypointFollower disengages. It seems that the vehicle.set_light_state is causing the WaypointFollower to loose handle on the ego vehicle. Although, it is expected that the WaypointFollower should keep driving the ego vehicle since it is a parallel behavior to the light_sequence.
I appreciate any help on this.

Hi @fabianoboril ,
Thank you for the --debug hint. It is very useful.
Here is my _create_behavior class:
`# Source and Sink
actor_source = ActorSource(['vehicle.tesla.model3'], self._source_transform, self._source_gap, self._blackboard_queue_name)
actor_sink = ActorSink(self._sink_location, threshold=0)
    # Other vehicle driving
    other_driving = WaypointFollower(self.other_actors[0], self._opposite_speed,
                                     blackboard_queue_name=self._blackboard_queue_name, avoid_collision=True, sampling_radius=0.5, name="OtherDriving")

    # Ego parallel
    ego_parallel = py_trees.composites.Parallel(policy=py_trees.common.ParallelPolicy.SUCCESS_ON_ALL,"ego_behavior")

    #Ego driving
    ego_parallel.add_child(WaypointFollower(self.ego_vehicles[0], self._HV_speed, sampling_radius=0.5,name="EgoDriving"))

    # Lights control at a particular point
    lights_sequence = py_trees.composites.Sequence("ChangingLights")
    lights_sequence.add_child(InTriggerDistanceToVehicle(self.ego_vehicles[0], self.other_actors[0], self.Trigger_Distance, name="DistanceToOther"))
    light_change=carla.VehicleLightState(carla.VehicleLightState.LeftBlinker | carla.VehicleLightState.RightBlinker | carla.VehicleLightState.Position)
    lights_sequence.add_child(VehicleLightsControls(actor=self.ego_vehicles[0], light_status=light_change, name="LightsControl"))
    lights_sequence.add_child(TimeOut(60))
    ego_parallel.add_child(lights_sequence)

    # End condition
    end_condition = DriveDistance(self.ego_vehicles[0], self._ego_vehicle_drive_distance, name="EndCondition")

    # Root
    parallel_root = py_trees.composites.Parallel(policy=py_trees.common.ParallelPolicy.SUCCESS_ON_ONE, name="Root")
    parallel_root.add_child(actor_source)
    parallel_root.add_child(actor_sink)
    parallel_root.add_child(other_driving)
    parallel_root.add_child(ego_parallel)
    parallel_root.add_child(end_condition)
    scenario_sequence = py_trees.composites.Sequence()
    scenario_sequence.add_child(ActorTransformSetter(self.other_actors[0], self._second_actor_transform))
    scenario_sequence.add_child(parallel_root)

    return scenario_sequence`

This new lights control behavior I created:
`class VehicleLightsControls(AtomicBehavior):
"""
A class to set lights status on a vehicle

Important parameters:
- name: Name of the atomic behavior
- actor: the vehicle that we are changing the light_status for
- light_status: the new light state to be set
"""

def __init__(self, actor, light_status=carla.VehicleLightState(carla.VehicleLightState.NONE), name="VehicleLights"):
    """
    Default init. Has to be called via super from derived class
    """
    super(VehicleLightsControls, self).__init__(name)
    self.logger.debug("%s.__init__()" % (self.__class__.__name__))
    self.name = name
    self._actor = actor
    self.light_status = light_status

def update(self):
    self._actor.set_light_state(self.light_status)
    new_status = py_trees.common.Status.SUCCESS
    return new_status`

I took a snap shot from the behavior tree state when the vehicle lost control. Based on my understanding when looking at the tree, the ego vehicle EgoDriving  WaypointFollower returns SUCCESS after the lights were changes. However, this should not be the case as WaypointFollower documentation mentions that: "If no plan is provided, the actor will follow its foward waypoints indefinetely."

Thanks!

Hi,
from the code it looks ok. However, the debug-info of the tree reveals something interesting. You Waypoint-Following behavior is already completed. This would explain, why there is a control loss. Can you check, what causes the behavior to end with success?
Therefore, please go to:
https://github.com/carla-simulator/scenario_runner/blob/76d56c615c6af9e63f53bd60978f2be56d8a2883/srunner/scenariomanager/scenarioatomics/atomic_behaviors.py#L1502
In here, you find a couple of locations, where the behavior status changes to success. Would it be possible for you, to check which one is triggering your behavior to end? This will help us to find the root cause of your issue.

Hi @fabianoboril,
The second one is triggering the behavior end. It seems that after the VehicleLightState is set on the ego vehicle, "Resetting ego-vehicle!" is printed on the terminal and self._local_planner_dict is becoming empty at that point. Thus,  update(self) does not go in the for actor in self._local_planner_dict: loop and the scenario ends in success. Not sure why this is happening though. Look like it is related to setting the VehicleLightState.

Can you check if Line 1540 is executed once the LightSetter is called?
https://github.com/carla-simulator/scenario_runner/blob/76d56c615c6af9e63f53bd60978f2be56d8a2883/srunner/scenariomanager/scenarioatomics/atomic_behaviors.py#L1540

Line 1540 is no longer executed after the LightSetter is called.

Ah, I think I found the issue.
As you haven't defined an initialise() method for your LightSetter, the parent method is called, which terminates the WaypointFollower. Please define an initalise() method in your LightSetter and do not call the parent method. Something like:
    def initialise(self):
        return

Does it help?

That solved the issue. Thank you!


Use preact render instead of render-to-string from react

I was struggling with an error in Dotcom Rendering when trying to upgrade to Webpack 5:
  ERROR in<EMAIL_ADDRESS>1:771-821
  Module not found: Error: Package path ./compat/server is not exported from package /Users/gareth_trufitt/code/dotcom-rendering/node_modules/preact (see exports field in /Users/gareth_trufitt/code/dotcom-rendering/node_modules/preact/package.json)

The error came from the use of import { renderToString } from 'react-dom/server'; in atoms-rendering, but I couldn't for the life of me get Dotcom Rendering to compile it properly, despite the use of it in DCR. I upgraded babel, webpack, preact, preact-render-to-string in both projects, messed around with webpack alias, ensured we were bundling etc but it just wouldn't work.
While this should be functionally identical, the problem will come if anyone uses atoms-rendering in a React project then they'll have to install preact but react-dom is much (much) bigger than preact and preact-render-to-string - so I am not particularly concerned...

 Upgrade to Webpack 5

We're not using preact in apps-rendering but there's good reasons to switch over to it so happy for this to be merged.

Yeah, I think it only adds like 6kb to your build if you don't have preact already so it's not hugely painful

One thing though, do we need to be careful of this: preactjs/preact-render-to-string#18?

I don't think so? Html attributes are case insensitive so I think this is probably more of style thing?


[Rest-server] rebase master to migrate-secret branch

migrate-secret PR has been approved however there are many conflict so I will abandon that PR and resubmit.

Previous PR #1851.

Coverage decreased (-0.07%) to 51.71% when pulling bbc345c9c2af1dce24b02f533f966d94def10622 on canwan/secret-migration-rebase into 4243edb59038b2919cef0aeb0ca0328e46b7e090 on master.

Coverage decreased (-0.07%) to 51.71% when pulling bbc345c9c2af1dce24b02f533f966d94def10622 on canwan/secret-migration-rebase into 4243edb59038b2919cef0aeb0ca0328e46b7e090 on master.


chore(main): release 1.6.1

:robot: I have created a release beep boop
1.6.1 (2024-05-22)
Bug Fixes

txt records (125cf11)

Documentation

Update README.md (230bf3c)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/pythoninthegrass/gopappy/releases/tag/v1.6.1 :sunflower:


Android only returns every few minutes

Hello,
thanks for the plugin.
I wanted to ask if it is normal that when the Android version is running in the background it sends a location only every few minutes? I have attached a screenshot. If I keep the emulator open everything works perfectly. If I turn off the screen from the emulator and wait for a while I see that only every few minutes a location is requested.
So I cannot deliver the product. What can I do about it? As I understand the Android documentation, background services are only allowed to check the location a few times per hour. But because of the notification the service is a "Foreground Service", isn't it? But shouldn't I be able to access the location as often as I have the display on?
How do all those jogging and fitness apps make it so good?
With iOS, however, it works perfectly in the background.

Hi @ndhbr
Thank you for opening an issue.
Short answer No it's not normal.
I wouldn't surprise if you had this problem on iOS. But in Android sending location data in every interval should be guaranteed.

What is your interval in Plugin Setting ?
Does this happens only when app is in background?
Does sending location data getting delayed from the moment you put app in background or it is normal for a few moment?
Please provide Any additional data (logs, codes, possible scenario) that could help with identifying the problem.

I wouldn't surprise if you had this problem on iOS. But in Android sending location data in every interval should be guaranteed.

I thought so too, but with iOS it works fine.

What is your interval in Plugin Setting ?

I set the interval to 3.

Does this happens only when app is in background?

Yes, in the foreground it works as desired.

Does sending location data getting delayed from the moment you put app in background or it is normal for a few moment?

When I minimize the app or turn off the screen the location still works normally for a while. I see in the output that it still gets about 50-60 locations.
From then on the output does not output anything. And then it doesn't output anything anymore. As soon as I go back into the app I see that only every few kilometers a location is retrieved.

Please provide Any additional data (logs, codes, possible scenario) that could help with identifying the problem.
I also use the Path Provider plugin, as in the example. I append each captured position byte-wise to a binary file. In my "updateUI" method I then read the file from the required point and draw lines to the newly acquired points. This works very well under iOS and under Android unfortunately only in the foreground.

Here is a small part of my log. One record has 20 bytes. So normally the offset jumps up 20 bytes when it gets a position. Here it stopped writing to the console after 1140 bytes (1140 / 20 = 57 locations). Since my interval is 3 seconds the exact location stopped after ~2.9 minutes.
I/flutter (19721): Read file from byte 960. Got 1 new positions
I/flutter (19721): updateUI: 48.80933380126953, 11.795769691467285 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 980. Got 1 new positions
I/flutter (19721): updateUI: 48.809715270996094, 11.796320915222168 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1000. Got 1 new positions
I/flutter (19721): updateUI: 48.8098030090332, 11.797342300415039 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): NEW MAX SPEED: old: 35.381771087646484 new: 35.78877258300781
I/flutter (19721): Read file from byte 1020. Got 1 new positions
I/flutter (19721): updateUI: 48.80979537963867, 11.798701286315918 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1040. Got 1 new positions
I/flutter (19721): updateUI: 48.80982971191406, 11.799582481384277 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1060. Got 1 new positions
I/flutter (19721): updateUI: 48.80989074707031, 11.800590515136719 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1080. Got 1 new positions
I/flutter (19721): updateUI: 48.809940338134766, 11.801417350769043 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1100. Got 1 new positions
I/flutter (19721): updateUI: 48.80998611450195, 11.802240371704102 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1120. Got 1 new positions
I/flutter (19721): updateUI: 48.81004333496094, 11.803336143493652 - Time:<PHONE_NUMBER>768.0
I/flutter (19721): Read file from byte 1140. Got 1 new positions
I/flutter (19721): updateUI: 48.80995559692383, 11.804574966430664 - Time:<PHONE_NUMBER>768.0

Here are two comparison pictures. The big jump was when the emulator was off and when I turned the emulator on again you can see that the locations became accurate again (the curve).
https://imgur.com/a/lXAhRdJ
I uploaded the pictures to Imgur because I didn't know how to collapse pictures in markdown, sorry.
Thanks in advance!
Andreas

"UpdateUI", does it mean that you are receiving the location in callbackBackground and sending it to the mainApp in foreground through the port?

Yes, I do it like in the example project
    port.listen((dynamic data) async {
      await updateUI(data);
    });

Try to log inside callback function.

I'll try it out.

It is not recommended to update UI from backgroud.

That was not my intention either. This is now my callback-function.
  static Future<void> callback(LocationDto locationDto) async {
    final SendPort send = IsolateNameServer.lookupPortByName(ISOLATE_NAME);

    print('${locationDto.latitude}, ${locationDto.longitude}');

    await RideFileManager.appendPosition(
        RideRoutePosition.fromLocationDto(locationDto));

    send?.send(locationDto);
  }

I thought that the port.listen(...) function is only called when the application is in the foreground.

Try to log inside callback function.

I have now tested this. The logging in the callback function stops at the same time as the logging of the port.listen(..) function in the UI.

Soooo. After long debugging and reading hex dumps I know what it is. The callback stops extending the file at some point. But I have absolutely no idea what the reason is. Does Android have a limit that says "stop writing to the file so often"?
I have attached a log example. The logs come from the callback. The first and last data were in the file, nothing in between. All others were skipped.

  /// Appends position to ride file
  static Future<void> appendPosition(RideRoutePosition rideLocationData) async {
    final file = await _getRideFile();
    final IOSink sink = file.openWrite(mode: FileMode.append);
    sink.add(rideLocationData.toByteList());
    await sink.close();
  }
...
  /// Converts object to byte list for IOSink
  Uint8List toByteList() {
    final ByteData data = ByteData(LOCATION_OBJECT_BYTE_SIZE);

    data.setFloat32(0, altitude);
    data.setFloat32(4, speed);
    data.setFloat64(8, time);
    data.setFloat32(16, latitude);
    data.setFloat32(20, longitude);

    return data.buffer.asUint8List();
  }

Please tell me you have an idea what this is all about. I'm starting to freak out... 😩

@mehdok @gpibarra do you have any idea? 🥺
I'm still stuck on the problem that the callback gets the locations, but the file sometime when the app is in the background is only written every few minutes. I tried to implement a temporary buffer that only writes all 10 locations to the file. Does not change anything.

Even if you are obviously not interested: The Example App does not work either and has the same problem. So the plugin is simply unusable.

Hi @ndhbr,
And thank you for your patient .
You should know that  me and other contributors  here have a daily job to do and even a life to live. So it is normal that answering or fixing a problem gets delayed. We even had issue which is fixed 2 month after reporting.
On the other hand, the licence  of the library explicitly says you can use the plugin freely, you can distribute it freely, you can modify it freely, but we do not guarantee anything.
At the end I would be more than happy to see a PR from you fixing this issue.
Good luck my friend.

I understand that you cannot invest endless time in this project. A small confirmation that you will look at it sometime would have been good anyway.
I urgently need this for a product, so I switched to the paid version of Transistorsoft.


Add application logo for Dolphin Memory Engine.

It is a minimalist RAM module designed in Inkscape 1.1.2. The color gradient has been naturally borrowed from the Dolphin Emulator logo.

The .ico file for the Windows binary executable has been produced with ImageMagick 6.9.11-60, after rasterizing the logo to a number of resolutions with Inkscape:
inkscape -z -w 16 -h 16 logo.svg -o logo_16.png
inkscape -z -w 24 -h 24 logo.svg -o logo_24.png
inkscape -z -w 32 -h 32 logo.svg -o logo_32.png
inkscape -z -w 48 -h 48 logo.svg -o logo_48.png
inkscape -z -w 64 -h 64 logo.svg -o logo_64.png
inkscape -z -w 128 -h 128 logo.svg -o logo_128.png
inkscape -z -w 256 -h 256 logo.svg -o logo_256.png

convert \
    logo_16.png \
    logo_24.png \
    logo_32.png \
    logo_48.png \
    logo_64.png \
    logo_128.png \
    logo_256.png \
    logo.ico

I was thinking about doing something similar like this. I love the result, especially since you used Dolphin color gradient. Thanks!


async def courses_list(req, res):SyntaxError: invalid syntax

from bocadillo import App
app = App(
enable_cors=True,
cors_config={"allow_origins": [""], "allow_methods": [""]},
)
_COURSES = [
{
"id": 1,
"code": "adv-maths",
"name": "Advanced Mathematics",
"created": "2018-08-14T12:09:45",
},
{
"id": 2,
"code": "cs1",
"name": "Computer Science I",
"created": "2018-06-12T18:34:16",
},
]
@app.route("/courses")
async def courses_list(req, res):
res.media = _COURSES
if name == "main":
app.run()

File "app.py", line 25
async def courses_list(req, res):
^
SyntaxError: invalid syntax

Hi @YKNB,
From the SyntaxError pointing to async def, it seems that your version of Python does not support the async/await syntax. Which version of Python are you using?
P.S.: I am being understanding here, but be aware that simply copy/pasting some code in this manner may come across as rude to some. I wouldn't have minded you putting in some sentences describing your issues. :-)

I just released a fix in v0.12.1 that enforces that Python 3.6+ is installed on the target machine to be able to install Bocadillo. Can you try upgrading to see if your Python version is the problem?
pip install -U bocadillo

sorry I do not usually comment on a bug code

sorry it was the version of the python since I use a mac due blow I have two version, the Python 2.7 and Python 3.7.2 ..thank you again

Alright! Glad this worked out. :+1:


[Feature] Binlog connector can read binlog from tablet

What type of PR is this：

[ ] BugFix
[X] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #
Problem Summary(Required) ：

Binlog connector can read binlog from tablet using BinlogReader, and there are two use cases

scan full of binlog using select * from t [_BINLOG_] which is only used for testing currently
realtime mv read binlog from the given offset for incremental computation

Binlog connector will distinguish the two cases using the flag is_stream_pipeline,  false for case 1, and true for case 2. This PR includes codes to support both cases, but actually the code can only run in case 1 currently, and there are still some problems for case 2 which need more work to debug the end-to-end mv pipeline. I still include the code for case 2 in this PR so that reviewers can have a full context.
How to use
You can test case 1 in following steps

create table with binlog enabled

CREATE TABLE `test_binlog` (
  `c0` int(11) NULL COMMENT "",
  `c1` int(11) NULL COMMENT "",
  `c2` varchar(100) NULL COMMENT ""
) ENGINE=OLAP
DUPLICATE KEY(`c0`)
COMMENT "OLAP"
DISTRIBUTED BY HASH(`c0`) BUCKETS 2
PROPERTIES (
    "replication_num" = "1",
    "binlog_enable" = "true",
    "binlog_ttl_second" = "3600",
    "binlog_max_size" = "107374182400"
);

insert some data to the table

INSERT INTO `test_binlog` VALUES (1, 2, "12"), (2, 3, "23"), (3, 4, "34"), (4, 5, "45");

enable mv planner and execute select with hint [_BINLOG_]

SET enable_mv_planner=true;
SELECT * from `test_binlog` [_BINLOG_];

And the result will be like this
+------+------+------+------------+-----------------+----------------+-------------------+
| c0   | c1   | c2   | _binlog_op | _binlog_version | _binlog_seq_id | _binlog_timestamp |
+------+------+------+------------+-----------------+----------------+-------------------+
|    3 |    4 | 34   |          0 |               2 |              0 |<PHONE_NUMBER>000000 |
|    1 |    2 | 12   |          0 |               2 |              0 |<PHONE_NUMBER>000000 |
|    2 |    3 | 23   |          0 |               2 |              1 |<PHONE_NUMBER>000000 |
|    4 |    5 | 45   |          0 |               2 |              2 |<PHONE_NUMBER>000000 |
+------+------+------+------------+-----------------+----------------+-------------------+
4 rows in set (0.02 sec)

Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

run starrocks_admit_test

run starrocks_admit_test

run starrocks_admit_test


How to know rating view is clicking ?

In recylerview adapter
ratingBar.setOnRatingChangeListener(new BaseRatingBar.OnRatingChangeListener() {
    @Override
        public void onRatingChange(BaseRatingBar ratingBar, int rating) {
            Log.e(TAG, "onRatingChange: " + rating);
             holder.ratingView.setRate(4);
    }
});

in this rate action I want to set new rate holder.ratingView.setRate(4);
but it's show rating value ? why ?

Hello @ismailtosun ,
I'm not sure what's your problem,
did you mean the code holder.ratingView.setRate(4); doesn't work?

no,I mean when I click the rateview, I want to show an alert dialog.And don't want to let rate.


How to share the clipboard between Chrome OS and a chroot

I've already created a chroot and was wondering if clipboard sharing between the chroot and Chrome OS is possible? When I list all targets, I see this:
extension
        Clipboard synchronization and URL handling with Chromium OS.
        Requires: x11

Would this be the recommended approach to get a shared clipboard?
sudo sh ~/Downloads/crouton -u -t extension -n chrootname
I couldn't see any info on clipboard sharing in the Wiki. Thanks in advance.

@henrywright Yes correct, you will then also need to install the chromeos extension from the webstore. It will be mentioned with the link when you complete the update.

Thanks for the info @divx118

I just tried this, and it didn't work...I'm on the new chromebook pixel...I installed the target extension, I installed it on my computer, and I tried to update it like shown in this script, and it still doesn't work....any idea what I'm doing wrong?

Ok, actually, it does work on the gui, but in vim, when I try to pull from the "*" register, there's nothing there

Also, when I try to use xclip, i get Error: Can't open display: :0

also having this issue, I would like to do "+y from normal mode in vim but I get an error
clipboard: No provider. Try ":CheckHealth" or ":h clipboard".


Documentation for fields

It would be nice to generate documentation for struct fields.

They are. Fields are documented as they appear in the abi, i.e. like functions that return the field's value. Struct fields, therefore, are treated as functions that return arrays of fixed length.
It is however a good idea to document the struct types and later refer to them in the docs.


Questionary To Do List

[x] List of platforms should be based on list of directories in src/swell/deployment/platforms
[x] Set the run ahead limit to string in case the workflow is not time based. Default can be 'P4'
[x] Ignore pycache when presenting list of directories that represent workflows to choose from.
[x] Currently the user is allowed not to choose a model but they should have to choose at least one. Maybe that means it should be changed to drop-list?
[x] Choices for which models should be based on what is in the directory. I.e. the options geos_atmosphere and geos_ocean are presented because those directories exist.
[x] Choices for observations should be based on what is available in src/swell/configuration/jedi/<interface>/<model_name>/observations.
[x] Switch the cycle times in atmosphere and ocean to be a check list.
[x] Add some verbosity stating the beginning and end of questions related to a certain model?
[x] Spaces between questions?

Done!


Command to get the detail of a disk

The current disk.list command doesn't return the start and end of a partition or the free space on disk. which make it hard to create multiple partition on a disk.
My idea would be to have a disk.get command that returns you more information the then disk.list does.

----> 1 info = cl.disk.getinfo("sda","sda1")

/opt/jumpscale8/lib/g8core/client.py in getinfo(self, disk, part)
    568
    569         if result.state != 'SUCCESS':
--> 570             raise RuntimeError('failed to get info: %s' % result.stderr)
    571
    572         if result.level != 20:  # 20 is JSON output.

RuntimeError: failed to get info: sh: syntax error: unexpected "(" (expecting "fi")

Syntaxe error in the command.


[WIP] Ledger upgrade feature

[x] ledger_manager: connect to device by id
[x] ledger_manager: detect if app open & wait
[x] subscription
[x] gui: descriptor creation step (hw_list_view())
[x] gui: descriptor registartion step (hw_list_view())
[x] gui: app settings register descriptor (register_wallet_modal())
[x] gui: app verify address step (hw_list_view_verify_address())
[x] gui: app signing step (hw_list_view())
[ ] gui: do not close modal if upgrading

address #1135

@darosior i actually display the upgrade progress logs in a 'scrollable' console, what do you think?

(we can add a progress bar after 'Upgrading:' also)

I'm not sure the logs are adding much value to the user. I personally think it clutters the UI for little or no value to the user, which only cares about the progress and the success / failure statuses.

Yeah. Do you think some are necessary to show the users? I can think of "please confirm on your device" but don't have others on the top of my mind. If it's only this one we could even just have this message: "Upgrading, please check your device".

Several are necessary,as it can takes some time to establish the connexion w/ the ledger HSM (w/ bad connection), and imho it can feel very confusing as sometimes nothing changing on device screen.
we should at least display:

quit the bitcoin app in order to start upgrading
accept app listing
accept to upgrade the app

those are 3 actions the user had to perform.

note to myself: seems we can get the install progress see

Moving this and the relative issue to v8 since as per team discussion we won't be able to properly review and test it given the close deadline.


More typos

There are a few more typos in the readme file.
https://github.com/edhowland/FizzBuzz_Challenge/blob/main/README.md

Typos in the readme file.
https://github.com/edhowland/FizzBuzz_Challenge/blob/main/README.md

I'll tackle them. - Robert

Ok, I saw no line that you wanted to remove any lines when I clicked on the link in the issue above.
Have you not actually forked it yet.
BTW, I assume this comment will generate an email back to whoever sluugdiscussgithub is.
And I got here via an email when this issue (#2) was opened.
Regards, Ed

Yes, there is no pull request, yet. I only created an issue. And, yes, this
comment was emailed to me. And I’m replying using email instead of via the
browser.  - Robert
On Fri, Jan 7, 2022 at 2:20 PM Ed Howland @.***> wrote:

Ok, I saw no line that you wanted to remove any lines when I clicked on
the link in the issue above.
Have you not actually forked it yet.
BTW, I assume this comment will generate an email back to whoever
sluugdiscussgithub is.
And I got here via an email when this issue (#2
https://github.com/edhowland/FizzBuzz_Challenge/issues/2) was opened.
Regards, Ed
—
Reply to this email directly, view it on GitHub
https://github.com/edhowland/FizzBuzz_Challenge/issues/2#issuecomment-1007748911,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXGELZE6TM6U5FPUCS3N4ATUU5KJHANCNFSM5LPTQMMA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

In contrast, this comment was created from the GitHub app. - Robert


front page images to web, as the animation background image

Initial problem was that a couple of images were loaded as .png images. Because you can't really use a fetched gatsby image as background or you have to use a separate plugin for that the best solution for me was using svg's instead of images
Work around

thumbnail images fetched with graphql

svg icons sitting in components, like the BackArrow in the  component were loaded using the gatsby-plugin-react-svg, where I specified a folder to the .svg's which I want to load as components. But only for those ones.

svg's used elsewhere, like the favicon ico or the background image (styled-component) of the front page's animation are imported as raw svg's:

favicon in the SEO (Helmet) component:

import JAIcon from "../assets/icons/JAIcon.svg"

link={[{rel: "icon", type: "image/png", href: `${JAIcon}`}]}

background-image in a styled-components div:

import JAIcon from "assets/icons/JAIcon.svg"

 .exampleDiv {
  background: url("${JAIcon}") no-repeat 55%/60%;
  }

This way I am serving the images as webp images, the css background images as raw svg's, and other svg's nested in components as gatsby-plugin-react-svg end products (components).


server crashes/plugin deosnt respond after multiple /recycle 0 or /cycle 0

http://pastebin.com/mKRraA3z

Your server ran out of memory.

old maps should get unloaded when map is cycled, and maybe they could be deleted from the disk if the "delete-matches" setting is on

@Pablete1234 Matches are never completely unloaded until the server is shut down, and therefore have to be deleted on the next server startup.

@iEli2tyree011 but is it not possible to totally unload the map when you cycle?

@Pablete1234 No, the server always keeps it in memory until it is completely shut down.

@iEli2tyree011 then this should be closed as there is no way to fix it

@Pablete1234  are you sure there are no ways to optimize the plugin and decrease the chances of it running out of memory?

@kroest i'm not the one you should be asking to, try asking elly or twiz

@krost Yes, have global listeners not loads of uselessodules filled with @EventHandlers.

@Pablete1234  don't say this should get closed if you don't know if there is a fix for it

@kroest I would give http://downloadmoreram.com/ a shot, might fix your problem :laughing:

@ryanw-se Did you really fall for that scam?

@dentmaged  its a joke, dayum

Мне кажется вы ошиблись. Я не знаю кто вы и о чем вообще идёт речь.
5 авг. 2015 г. 17:58 пользователь "Jan-Paul Mosterdijk" <
<EMAIL_ADDRESS>написал:

@dentmaged https://github.com/dentmaged its a joke, dayum
—
Reply to this email directly or view it on GitHub
https://github.com/twizmwazin/CardinalPGM/issues/819#issuecomment-128026046
.

@Krost Мои извинения, мой друг mistagged пользователя по имениkroest и вместо вошлиkrost.

Не страшно. Удачи в решении проблем :)
5 августа 2015 г., 18:07 пользователь Ryan W<EMAIL_ADDRESS>написал:

@Krost https://github.com/Krost Мои извинения, мой друг mistagged
пользователя по имениkroest и вместо вошлиkrost.
—
Reply to this email directly or view it on GitHub
https://github.com/twizmwazin/CardinalPGM/issues/819#issuecomment-128030838
.

@Krost Спасибо, поздравления из Америки :)

Хахаха )) чо за...

Stop running your server on a potato

@Pablete1234 memory is has nothing to do with disk space or storage. He is running out of memory, not disk space, so unloading the matches is useless. There may be ways to make the garbage collector more aggressive to free more memory, but I've never tried it.

@ryanw-se Whopps lol poor krost.


[BUG]: Incorrect property typings when inserting values into new record

What version of drizzle-orm are you using?
0.30.10
What version of drizzle-kit are you using?
0.21.1
Describe the Bug
schema.ts
export const users = pgTable("users", {
  id: varchar("id").primaryKey(),
  firstName: varchar("first_name").notNull(),
  lastName: varchar("last_name").notNull(),
  phoneNumber: varchar("phone_number", { length: 12 }).notNull(),
  createdAt: timestamp("created_at").defaultNow(),
});

index.ts
const user = await db.insert(users).values({
  id: data.id,
  firstName: data.first_name,
  lastName: data.last_name,
  phoneNumber: data.phone_numbers[0].phone_number,
});

Object literal may only specify known properties, and 'id' does not exist in type '{ id: string | SQL<unknown> | Placeholder<string, any>; firstName: string | SQL<unknown> | Placeholder<string, any>; lastName: string | SQL<unknown> | Placeholder<...>; phoneNumber: string | ... 1 more ... | Placeholder<...>; createdAt?: Date | ... 3 more ... | undefined; }[]'.

Expected behavior
id should exist in type
export type NewUser = InferInsertModel<typeof users>;

type NewUser = {
    id: string;
    firstName: string;
    lastName: string;
    phoneNumber: string;
    createdAt?: Date | null | undefined;
}

Environment & setup
No response

Closing as this was an issue with incomplete data throwing off the union type. It was not related to drizzle. Sorry for the noise.

Closing as this was an issue with incomplete data throwing off the union type. It was not related to drizzle. Sorry for the noise.

@pruett could you share more? Running into this same issue...

@slimshreydy did you find a solution? Otherwise @pruett could you share the problem with the union type? I have the same issue...


Failure in scaling up cluster with already added BIGIP

This failure is created by following these steps:
1- Creating cluster with BIGIP A and BIGIP B
2- Scale up cluster with BIGIP C
3- Scale up cluster with BIGIP C
# TEST:
(f5openstack-test)bld-ml-zakeri:cluster zakeri$ py.test --symbols ./test_env.yaml -sv -- test_cluster_manager.py
<class 'f5.bigip.BigIP'>
============================================================================== test session starts ==============================================================================
platform darwin -- Python 2.7.11, pytest-2.9.1, py-1.4.31, pluggy-0.3.1 -- /Users/zakeri/.virtualenvs/f5openstack-test/bin/python2.7
cachedir: ../../../.cache
rootdir: /Users/zakeri/GitHub/f5-common-python-1, inifile:
plugins: f5-openstack-test-0.2.0, cov-2.2.1, symbols-0.1.0a3
collected 1 items
test_cluster_manager.py::test_onenode_cluster_management Checking state of devices to be clustered...
Adding trusted peers to root BigIP...
Adding following peer to root: host-10-2-1-6.openstacklocal
Creating device group...
added following device to group: host-10-2-1-4.openstacklocal
added following device to group: host-10-2-1-6.openstacklocal
Scaling cluster up by one device...
Adding following peer to root: host-10-2-1-5.openstacklocal
added following device to group: host-10-2-1-5.openstacklocal
ADDING C TO CLUSTER WHICH WAS ALREADY THERE
Scaling cluster up by one device...
Adding following peer to root: host-10-2-1-5.openstacklocal
FAILED
=================================================================================== FAILURES ====================================================================================
________________________________________________________________________ test_onenode_cluster_management ________________________________________________________________________
BigIPSetup = (<f5.bigip.ManagementRoot object at 0x1063b7090>, <f5.bigip.ManagementRoot object at 0x1063b7750>, <f5.bigip.ManagementRoot object at 0x1063b7c10>)
def test_onenode_cluster_management(BigIPSetup):
    a, b, c = BigIPSetup
    bigip_list = [a, b]
    # dg = dgm(DEVICE_GROUP_NAME, a, bigip_list, PARTITION, 'sync-failover')
    cm = Cluster(
        bigip_list, DEVICE_GROUP_NAME, PARTITION, 'sync-failover')
    cm.create_cluster()
    cm.scale_cluster_up(c)
    bigip_list.append(c)
        # dg.check_device_group_status()
    print "ADDING C TO CLUSTER WHICH WAS ALREADY THERE"

  cm.scale_cluster_up(c)

test_cluster_manager.py:87:

../../../f5/multi_device/cluster/init.py:97: in scale_cluster_up
self.dgm.scale_up_device_group(bigip)
../../../f5/multi_device/cluster/managers.py:79: in scale_up_device_group
self._add_device_to_device_group(device)

args = (<f5.multi_device.cluster.managers.DeviceGroupManager object at 0x1063b7410>, <f5.bigip.ManagementRoot object at 0x1063b7c10>), kwargs = {}, attempt = 29
@wraps(method)
def poll(*args, **kwargs):
    for attempt in range(attempts):
        try:
            return method(*args, **kwargs)
        except Exception:
            time.sleep(interval)
            continue

  raise MaximumAttemptsReached('Polled method maximum number of times')

E       MaximumAttemptsReached: Polled method maximum number of times
../../../f5/common/pollster.py:42: MaximumAttemptsReached

@sanaz, this test above differs from what you sent me in slack, but yes this should fail before it even tries. I'll implement another exception and raise that. Thanks.

Issue Review: Addressed via #400. Can be folded into that

This is already fixed in my fork. None of this has been merged yet. Closing.


Add system requirements to Docunments/Readme

The CMakeLists.txt calls scripts that assumes the host computer to be on Ubuntu-like system; however, this system requirements is not stated anywhere.
https://github.com/dfki-ric/ugv_nav4d/blob/86650761370d2ed10e6fc49aa6ff797c18182a13/source_dependencies/install_os_dependencies.bash#L1-L7
(part of https://github.com/openjournals/joss-reviews/issues/6983)

Added the system requirements with a clear mention of the ubuntu requirement as a base OS.


vite build fails with withDefaults and props extending from another interface

Version
3.2.31
Reproduction link
sfc.vuejs.org/
Steps to reproduce
Let vue compile the code
What is expected?
It should compile and run
What is actually happening?
Throwing error

I already raised this in vite https://github.com/vitejs/vite/issues/7343
Please refer to the above issue for screenshot and logs

As a workaround add a property to the extended props:
interface SelectProps extends Props {
  _a?: never
}

Hi, good night!
I have the same issue, but is also ignoring when extending more than one interface.
interface OneProps { ... }
interface TwoProps { ... }
interface ThreeProps { ... }

interface MyProps extends OneProps, TwoProps, ThreeProps {};

My two cents,


Fix git access token not being sent in header

I found a bug in latest (v0.0.3).  Github API began complaining about needing the tokens to be passed in the request header, which of course, stops packwiz dead in its tracks if you've passed a token in.
Typically, these authorization header tokens are done with "Authorization" as the key name, which worked when I tested it.
In addition, I did some minor cleanup for readability and maintainability.
Last, but not least, I setup the application Gradle plugin to run results in a new build subfolder <gradle_build_dir>/test-project where the default is <project_dir>/build/test-project.

Looks like this was packwiz/packwiz-installer#49
Just found it after doing all of this lol.  It was a good little exercise though so oh well!  Shouldn't hurt to accept it before you move to your maven repo.

Thanks for the PR! I'll definitely merge this - I ought to have merged the previous PR that also did this but I thought the rewrite would take less time than it has :P
I definitely should push my progress somewhere, hopefully I can get the rewrite finished fairly soon.

Yeah.  I'd love to see it.  I'm getting more invested on working on it more
as I've been looking through the code more and more, but I'm a little
hesitant because it sounds like you've got big stuff in the works.
On Mon, Mar 6, 2023 at 11:31 AM comp500 @.***> wrote:

Thanks for the PR! I'll definitely merge this - I ought to have merged the
previous PR that also did this
https://github.com/packwiz/packwiz-installer-bootstrap/pull/5 but I
thought the rewrite would take less time than it has :P
I definitely should push my progress somewhere, hopefully I can get the
rewrite finished fairly soon.
—
Reply to this email directly, view it on GitHub
https://github.com/packwiz/packwiz-installer-bootstrap/pull/8#issuecomment-1456831267,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJSAF4F2CL5CPSMQV5GLSDW2Y3RLANCNFSM6AAAAAAVQMWKZA
.
You are receiving this because you authored the thread.Message ID:
@.***>

is there any releases or prebuilt binary with this patch available?