Missing API documentation

The API documentation section (currently online) misses the API doc for various classes, for example: https://www.cvxpy.org/api_reference/cvxpy.problems.html#id4
I needed to look at the sources to find the doc of SolverStats: https://github.com/cvxpy/cvxpy/blob/7c322f0783cc719c7b6a57e52c2593ae72e00e19/cvxpy/problems/problem.py#L1375
I have the feeling by looking at the .rst file that it should have been generated automatically instead: https://github.com/cvxpy/cvxpy/blob/master/doc/source/api_reference/cvxpy.problems.rst#solverstats

Fixed. Agreed, @akshayka  we should add some sort of pre-commit check to make gh-pages so that if it fails to create the API docs it will abort.

@SteveDiamond I'm not too familiar with gh-pages, but I can check if I find something in that regard.

@phschiele basically we have a Makefile where we run a bash script essentially that builds the docs with sphinx on the gh-pages branch (which is what github generates the website from). The relevant section starts here: https://github.com/cvxpy/cvxpy/blob/7c322f0783cc719c7b6a57e52c2593ae72e00e19/Makefile#L157


Fixed typo

Thanks for this AWSome guide!

@Eric-Luna  Thank you very much for taking the time to read and finding the typos, if you find any more typos can you also add them too and create a pull request so that I can merge them all together at once. If you didn't find any more typos or errors no problem, you just add a comment under mine, so I can merge this pull request. Thank you have a great day.

Hey thanks for you contribution I have now merged the changes


store Bound<T> inside PyRef and PyRefMut

Part of #3684, split from #3606
This first commit in this PR rewrites the internals of PyRef and PyRefMut so that they store Bound<T> instead of the gil-ref &PyCell<T>. This incurs a necessary reference counting overhead where there wasn't before.
This is necessary step to get lifetimes to wire up successfully for FromPyObject implementations for PyRef and PyRefMut to use the Bound APIs. In extract_bound, while we only have the one lifetime on FromPyObject (for compatibility reasons) we cannot borrow from the input &Bound. So we are forced to take ownership of a new reference. This could be removed again in future when we add the lifetime to FromPyObject.
The second commit makes the changes to the FromPyObject implementations, which required loosening of lifetimes on Bound::borrow and similar methods.
Overall I don't love where this gets to in terms of implementation, so suggestions are welcome and I'll be glad to clean this up as soon as there's a better solution.

Thanks @LilyFoote @Icxolu for the reviews. I've finally come back to this and tidied it up.
I stalled for a bit both because I was busy and because I was wondering about going ahead with the greater refactor of splitting PyCell up into internals and public GIL Ref as per https://github.com/PyO3/pyo3/pull/3860#discussion_r1493513418
For now I left that; it won't block us getting 0.21 shipped and would be a great tidy up to do on the way to 0.22, perhaps.

🎉 thanks both!


refactor(transformer): use ScopeFlags.is_arrow instead of inside_arrow_function_stack

I initially added inside_arrow_function_stack as we haven't got TraverseCtx in Transformer. Now we can use ctx.current_scope_flags().is_arrow() directly instead

It'll be interesting to see if this improves performance or not once #5851 is merged.

Does this PR depend on #5847 or #5846? If not, you might want to move this PR into its own stack, based on latest main with my recent changes to arrow functions transform.

Does this PR depend on #5847 or #5846? If not, you might want to move this PR into its own stack, based on latest main with my recent changes to arrow functions transform.

Thank you point this out, It doesn't depend.

Something has gone wrong with rebase. Commits from #5846 and #5847 are still included in this PR. Graphite doesn't make this easy!

Something has gone wrong with rebase. Commits from #5846 and #5847 are still included in this PR. Graphite doesn't make this easy!

I've found that once this PR contains extra commits, the Graphite will break when use move command

@Dunqing I know you're working on isolated declarations, but is it possible to finish this off? I have a few more changes to arrow functions transform, but I don't want to do them until this is merged, to avoid having merge conflicts mess again.
Or, if you're busy, would you like me to finish it up? I think I know what needs to be done.

@Dunqing I know you're working on isolated declarations, but is it possible to finish this off? I have a few more changes to arrow functions transform, but I don't want to do them until this is merged, to avoid having merge conflicts mess again.
Or, if you're busy, would you like me to finish it up? I think I know what needs to be done.

Thank you! Feel free to edit this PR or create a new one instead!


Configure nodemailer with API key (not credentials)

done in #30

it does not work!

checkout .env.example (in #30 and #33), you have to add env vars for gmail oauth2

[ ] use app.json to check for the required env vars in env file
[ ] add to README

covered by #38


Improvements and updates from Bullet Train

People frequently ask whether Koudoku is still maintained because master hasn't received much attention for a long time. Many people are still actively using Koudoku, but most of my personal efforts with development on it are now limited to keeping it working well in the context of Bullet Train specifically. This work is much easier for me and much less time consuming because I control so much more of the context of the apps that are built on top of Bullet Train (e.g. Rails version, Devise, CanCanCan, Bootstrap, UI, etc.) It also doesn't hurt that I'm compensated financially by folks who run into issues or need new features (e.g. the support we recently added for Rewardful and Link Mink affiliate programs.)
I've kept many of these updates in a separate branch until now. In the short term, this PR can help people understand which things have changed in the bullet-train branch of Koudoku. It's possible that using this branch will help Koudoku work better in modern Rails apps, but I can't be sure because the only modern Rails apps I work on anymore are Bullet Train-based.
The only thing not included in this branch are lots of modifications and customizations made to the .html.erb views. All of those are specific to Bullet Train's UI CSS and are only contained in the private Bullet Train repo. I have no idea off the top of my head what state the views in this repository are in, or which version of Bootstrap they use, etc. If someone wants to provide fixing updates for the latest version of Bootstrap, please send a PR!

Also, if you run into any trouble using this branch, the only other customizations (other than the views) that are in the Bullet Train repo would be around the Subscription model. Here's what it currently looks like in Bullet Train:
class Subscription < ActiveRecord::Base
  include Koudoku::Subscription

  belongs_to :team
  belongs_to :coupon, optional: true

  def active?
    plan.present?
  end

  def push_customer_details_to_stripe
    if subscriptions_enabled?
      unless test_record?

        customer = Stripe::Customer.retrieve(self.stripe_id, api_key: ENV['STRIPE_SECRET_KEY'])
        customer.email = team.formatted_email_address
        customer.description = team.billing_name

        # merge metadata as not to overwrite other people's metadata.
        metadata = JSON.parse(customer.metadata.to_s) || {}
        metadata.merge!(team.stripe_metadata)
        customer.metadata = metadata

        customer.save

        # also update the subscription quantity.
        customer.update_subscription({
          plan: self.plan.stripe_id,
          prorate: Koudoku.prorate,
          quantity: team.subscription_quantity,
        })

      end
    end
  end

  def test_record?
    self.stripe_id == 'cus_938yfhrfv7yzs9f8hed'
  end

end


Gws features

Coverage increased (+0.003%) to 82.869% when pulling 4c145d71e93bd35f2303c62e0c6cf2893d743094 on tany:gws into 1aebe19988c4f106a124f0a243f66f8f26990c16 on shirasagi:master.


How to use css variables?

I tried to use them as normal but I get the very nice Exception : "Exception of type 'System.Exception' was thrown." when I start the app. Is there a way to use variales?

Hi @TheBlue-1
For which feature of which product?

@davidbritch
for styling xamarin forms with css

Hi @TheBlue-1
Afraid CSS variables aren't supported. I'll update the doc to say so.

I've updated the doc in a PR that will go live later today.


Triggering logic, after transaction has ended.

Hi,
I have the following use case:
After creating, updating or deleting a record, my code needs to use this update to calculate and update another part of the model.
The database needs to be entirely up to date to calculate these correctly.
From the docs, it seems that either writing a custom adaptor or using an output hook is the way to go.
However, both are called during a transaction. At that stage, however, the database is not up to date. Hence calculations break.
I could use the client available to do an intermediate commit -which I  do currently-, but this feels like a hack undermining the framework. Also, the database is not super happy when processing "COMMIT" statement not linked to a transaction.  (Which seems to always happen in fortune when  finishing the database operation)
So, is there a way to tackle this? If it needs an API extension, we have time for that.
Thanks for the advice

Any updates on this?


Condition will always be false.

https://github.com/microsoft/Detours/blob/404c153ff390cb14f1787c7feeb4908c6d79b0ab/src/disasm.cpp#L3344

Thanks for the report, I'll take a look!

Assuming that the comment
        // 1111100xx001xxxx1111xxxxxxxxxxxx : PLD, PLI

is accurate, the bit mask (0xFE70F000) is correct -- but the expected value should be 0xF810F000. I.e. the lowest byte of the upper 32bit should be zero. The comment shows that this byte is not relevant (xxxx) and thus it makes sense to mask it out -- but then we'd expect all zeroes in the result.
Maybe this is a small brain fault since a few lines below, a slightly different mask is used, 0xFE7FF000 and in that case, the expected value would indeed by 0xF81FF000.
I suspect a unit test for this disassembler bug should be straightforward.


Error code when deps are outdated

Is there a way to return an error status code? I want my build to fail if deps are outdated. With the basic usage I get an ok status code.
lein ancient
[compojure "1.3.4"] is available but we use "1.3.3"
[time 14s, exit 0]

I think it should be reasonable to return a non-zero status code there.

@donbonifacio Sorry for the delay! Could you try the latest SNAPSHOT?
[lein-ancient "0.6.8-SNAPSHOT"]

$ lein ancient
[clanhr/postgres-gateway "0.9.3"] is available but we use "0.9.2"
[time 11s, exit 1]

Workin' :)
Thanks.

I don't think its reasonable that this is now the default behavior.  Geez.  Now my builds fail for what is otherwise just an operational message; like logging.  Is there a way to option out of this behavior?
tcc-rkuhar:scouting-utils robert.kuhar$ lein do clean, deps, compile, test, ancient
lein test scouting-utils.core-test
Ran 1 tests containing 1 assertions.
0 failures, 0 errors.
(warn)  [climate] - Δ  923ms - failure when checking com.climate/tcc-config: java.lang.Exception: response content-type is not XML (#{"text/xml" "application/xml"}): text/plain
(warn)  [climate] - Δ  969ms - failure when checking cheshire/cheshire: java.lang.Exception: response content-type is not XML (#{"text/xml" "application/xml"}): text/plain
[ch.qos.logback/logback-classic "1.1.8"] is available but we use "1.1.7"
[clj-http "3.4.1"] is available but we use "2.2.0"
[cheshire "5.6.3"] is available but we use "5.6.1"
[com.amazonaws/aws-java-sdk-s3 "1.11.70"] is available but we use "1.11.20"
[com.amazonaws/aws-java-sdk-dynamodb "1.11.70"] is available but we use "1.11.20"
[clj-time "0.12.2"] is available but we use "0.12.0"
tcc-rkuhar:scouting-utils robert.kuhar$ echo $?
1

Hey @robertkuhar ,
Can you split the lein ancient part in a new command? You can ignore the status code like this:
lein ancient || true

[Linking Issue #77]

I can...good idea.  Thanks.
Bob
On Thu, Dec 22, 2016 at 1:11 AM, Pedro Pereira Santos <
<EMAIL_ADDRESS>wrote:

Hey @robertkuhar https://github.com/robertkuhar ,
Can you split the lein ancient part in a new command? You can ignore the
status code like this:
lein ancient || true
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/xsc/lein-ancient/issues/55#issuecomment-268753529,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AALnYM7mwm04QPf8OFO3tIMeHwj9Uw1zks5rKj7WgaJpZM4Ehvpt
.


Performance Optimizations

I've got a couple really big (20mb-80mb) CSV files that I need to open, and TableTool was a bit slow to load things. Spent an hour or two in Instruments.app and fixed some low-hanging fruit, and roughly grouped into two categories: CPU-savings and Memory-savings
All tests pass, so I don't think anything broke.
[ed: rough benchmarks discussed below were run on a MacBook Pro (13-inch, 2017, Four Thunderbolt 3 Ports) with a 3.3 GHz Intel Core i5 and 16 GB 2133 MHz LPDDR3)]
[ed2: I didn't look as closely but this cuts the time it takes to open the FL_insurance_sample.csv.zip file from #58 in half, from ~2.5s to ~1.25s]
CPU

edc0504322893599e53a9f6005a23cddc3d0bb89 makes less temporary strings and instead tracks string ranges; this is a bulk of the improvement. Estimated time for opening an 80mb CSV file goes from 25s to 8.5s
ae3f4ff86d72fb476807071dba5c4ad240e91cce stop using NSScanner and use a custom CSVScanner value type instead; TableTool isn't using any of the convenience that NSScanner has, and NSScanner does a lot under the hood to try and prepare for that (e.g.: with localization). Estimated time for opening an 80mb CSV file goes from 8.5s to 5.5s
e12e1569490ab2d2810478545cc122352e323f8d track the C data string in CSVReader once and reference it instead of using characterAtIndex:. Estimated time for opening an 80mb CSV file goes from 5.25s to 4.5s
b4ef60d5c9c93aac4a063ebec277043cd5ff7cd5 Cache the string length in CSVScanner; NSString is immutable and with an 80mb CSV file, this call adds up.  Estimated time for opening an 80mb CSV file goes from 5.5s to 5.25s. Bit of a microptimization but still notable enough.

Memory

f369f3063ccf2ec7b9cdf7d9dc5b085b3c6d9a96 add an inner autoreleasepool around regex matching. NSRegularExpression uses icu under the hood which allocates a lot of things, but they don't need to live for very long. Estimated memory optimizations impact: reduced peak memory usage for opening the 80mb CSV file from ~2.15GB to ~1.25gb.

Both

97e3e5de1b8360059b61460b62e1be8ab9609279 re-use CSVReaders that the heuristic creates when scanning the document; this avoids data copies and re-doing work to create new NSString objects in memory. Estimated memory optimizations impact: reduced peak memory usage for opening the 80mb CSV file from ~1.25GB to ~925gb. Estimated time impact: reducing memory overhead saves another second and the 80mb CSV file takes ~3.5s to opening

Hi!
Thanks for the pull request, this is pretty nice! I'm sorry that I didn't have any time to review this sooner, I've been pretty busy lately.
These are a lot of changes at once, so it'll take me a while to review in detail.
We probably can't use commit e12e156 -- the characterIndices are not the same as byte indices. It will only work for ASCII characters. For most other encodings (UTF-8, UTF-16) etc it will break.


[WASM] Fix wrong DPI value

What does the pull request do?
I get wrong default dpi value
What is the current behavior?
I want actual Dpi value
What is the updated/expected behavior with this PR?
Return actual value from skia surface

Probably also need to implement ScalingChanged event too at some point


Error messsage about missing email in new ticket view is duplicated

Maybe already fixed with #54 but I'm not sure about, because this happens on a different view than #54 is concerning:
If a non logged in user tries to create e new ticket on /de/topics/new and leaves the email fiel blank, the error message below the email input field is printed tiwce instead of once.
See this two picture of a german instance:

ah, i see that the sign up thing is a duplicate of #54. Did #54 also solve the same thing on the new ticket form?

Thanks for this, it looks like it would be pretty easy to fix.

Hey, yeah the solution to #54 will almost certainly have fixed this too; that fix wasn't view-specific, but related to the model itself. Appreciate you raising it regardless; no objection to keeping this open until you verify it's resolved after the next release.

@rschaerer @olliebennett I just confirmed that this is resolved on master, so closing the issue-


RC0: CSS artifact in background of 100% height ion-row ! Dark Theme !

Short description of the problem:
when adding a 100% height row and then inside adding a list (again 100%), there's an odd artifact in the css. It's not possible to "find" with the dev tools so I don't know where its from. Only in Chrome!
What behavior are you expecting?
https://goo.gl/photos/EJPS4mrYDMTU8pCS8
Steps to reproduce:
pull, build, serve in chrome
https://github.com/pascalwhoop/darkdemo_ionic_v2_css

Fair to note its on a designer grade Display with a high resolution. But its only in Chrome (canary, dev, normal channel), not in safari or firefox.

only on OSX!

I just found this also on another website and it's therefore not an ionic issue. Sorry for the troubles. Just not sure what's wrong with my (freshly reinstalled?) Chrome


operation did not complete successfully because the file contains a virus or potentially unwated software

hopefully a false positive, likely user error, i downloaded the mod yesterday and today i am unable to launch because both steam and windows blocks the application, even after pressing run anyway(unsigned application prompt), windows 11 KB5044285 2024-10
after scanning with windows security i can confirm that its detecting a trojan:Win32/wacatac/h!ml
i was unable to upload this file to virustotal to check for the same reason (PuP/torjan error prompt)
upon launch on steam (steam error):
Failed to start process for this game: "operation did not complete successfully because the file contains a virus or potentially unwanted software"
bypassing steam (windows error): [same message]
windows seems to think its severe enough that i cant seem to prevent it from being removed by security, making me unable to use the mod, it had worked fine yesterday but today after waking my computer from sleep it refuses to cooperate

you can add an exception but i've already submit it to microsoft for false positive


Add support for WITHOUT ROWID tables

See #358
Added withoutRowid parameter to @Entity annotation, which appends WITHOUT ROWID to the CREATE TABLE statement if set to true.
Simple test cases included.

So first of all, thank you for your contribution and sorry for not looking at it sooner. I have mainly two minor issues with your code: The first is the toString method (see the comment above) and the second is the following:
I'm wondering if it would make sense to add a check for points 1 and 3 in the sqlite docs , meaning that WITHOUT ROWID tables should have a primary key that is not auto-incremented.
Apart from that, I'm pretty happy with your changes. But @vitusortner  should probably take a look.

@mqus Thank you for the review. I will update the code :)

Thanks for your contribution and thanks for your patience!


Ability to use existing htslib ?

It would be great if you could support linking against htslib I have installed already, rather than compiling your own version.
This would make it easier to package MapCaller into brew and bioconda.
Could you add a flag to the makefile, eg HTSLIB=/path/to/my/htslib ?

I have tested this (I have libhts.so.2) and it works:
main:           $(OBJECT)
                        $(Compiler) $(FLAGS) $(OBJECT) -o MapCaller $(LIB) -lhts -lbz2 -llzma

I made some changes of htslib. Thus Mapcaller cannot use the original htslib. I'll try to fix this problem. Thank you.

I compiled it with htslib 1.9 installed on my system.
What bugs will this cause?

htslib is used for outputing BAM file. However, I modified the original htslib source codes to change the arguments for the functions of SamHdr2BamHdr and sam_hdr_write. If you used a different version of htslib and would like to output the BAM file, MapCaller might fail to complete the task.

Ok I will make sure not to use external htslib! Thank you


contact form

hi.
In contact form section I take {%csrf_token%} but this not work . Forbidden (CSRF token missing or incorrect.)

the csrf_token its not part of the django-widget-tweaks we need you provide more information


[Feature] Support Synthetics APIs as Terraform resources

Is your feature request related to a problem? Please describe.
I would like to be able to programmatically manage Elastic Synthetics via Terraform.
Describe the resource you would like to have implemented.
https://github.com/elastic/kibana/issues/169547 recently introduced public APIs for these resources.
Describe the solution you'd like
This Terraform provider to be able to manage Synthetics resources.
Describe alternatives you've considered
Hacking something together via https://registry.terraform.io/providers/Mastercard/restapi/latest/docs
Additional context
https://github.com/elastic/cloud-on-k8s/issues/7724

Coming here to add some support to this request.
Utilising the mastercard/restapi provider works for create and update, but is unable to manage the delete lifecycle as a result of  the DELETE endpoint for Synthetics requires the Id to be included in the request body, not the uri.
@BenB196 have you found a method to achieve the delete via mastercard/restapi?

Duplicates https://github.com/elastic/terraform-provider-elasticstack/issues/335

@russellproud
I used this code (quite an amount of transformation) for elastic cloud 8.12.2, so far it works for most of the monitors, i think this endpoint is different for new version
resource "restapi_object" "main" {
  for_each  = { for idx, synthetic in local.synthetic_request_body : synthetic.name => synthetic }
  path      = "/internal/synthetics/service/monitors"
  read_path = "/internal/synthetics/service/monitor/{id}?decrypted=true"
  data      = jsonencode(each.value)
}

locals {
  synthetic_request_body = [
    for synthetic_url in var.synthetic_monitors : merge({
      name : (var.prefix_name == "") ? "${synthetic_url.url}-${synthetic_url.env}" : "${var.prefix_name}-${synthetic_url.url}-${synthetic_url.env}",
      urls : synthetic_url.url
      type : can(synthetic_url.form_monitor_type) ? ((synthetic_url.form_monitor_type == "single" || synthetic_url.form_monitor_type == "multistep") ? "browser" : synthetic_url.form_monitor_type) : "http",
      form_monitor_type : can(synthetic_url.form_monitor_type) ? synthetic_url.form_monitor_type : "http",

      enabled : can(synthetic_url.enable) ? synthetic_url.enable : true,
      alert : {
        status : {
          enabled : can(synthetic_url.enable) ? synthetic_url.enable : true
        },
        tls : {
          enabled : can(synthetic_url.enable) ? synthetic_url.enable : true
        }
      },
      schedule : {
        number : can(synthetic_url.schedule_number) ? synthetic_url.schedule_number : "1",
        unit : can(synthetic_url.schedule_unit) ? synthetic_url.schedule_unit : "m"
      },
      config_id : uuidv5("url", synthetic_url.url),
      tags : concat(var.default_tags, can(synthetic_url.tags) ? synthetic_url.tags : []),
      timeout : can(synthetic_url.timeout) ? synthetic_url.timeout : "5",
      locations : [(lower(synthetic_url.env) == "sg") ?
        {
          id : "asia-southeast1-a",
          label : "Asia/Pacific - Singapore",
          geo : {
            lat : 1.29027,
            lon : 103.851959
          },
          isServiceManaged : true
          } : {
          id : var.agent_policies[synthetic_url.env].policy_id,
          label : (var.suffix == "") ? "${var.prefix_name}-${synthetic_url.env}" : "${var.prefix_name}-${synthetic_url.env}-${var.suffix}"
          isServiceManaged : false
          geo : {
            lat : 0,
            lon : 0
          }
        }
      ],
      max_attempts : can(synthetic_url.max_attempts) ? synthetic_url.max_attempts : 2,
      max_redirects : can(synthetic_url.max_redirects) ? synthetic_url.max_attempts : "1",
      },
      // Add synthetic script
      can(synthetic_url.form_monitor_type) ? ((synthetic_url.form_monitor_type == "single") ?
        { "source.inline.script" : templatefile("${path.module}/single/single.js.tftpl", { url = synthetic_url.url }) } :
        (synthetic_url.form_monitor_type == "multistep") ?
      { "source.inline.script" : file(synthetic_url.file) } : {}) : {}
    )
  ]
}

synthetic_monitors = [
        {
            // Simple (HTTP)
            url = "https://www.elastic.co"
            env = "prd"
        }, {
            // Complex
            url = "https://www.microsoft.com"
            env = "dev"
            form_monitor_type = "http" //default
            enable = false
            schedule_number = "5"
            schedule_unit = "m"
            timeout = 10
            max_attempts = 2
            max_redirects = 1
            tags = ["additional_tags"]
        }, {
            //Multi-step
            url = "https://www.microsoft.com/en-sg"
            env = "sg"
            // mandatory to point to a playwright .js file
            file = "synthetic/example.js"
            form_monitor_type = "multistep"
            enable = true
        }, {
            //Single-step
            url = "https://www.elastic.co"
            env = "sg"
            form_monitor_type = "single"
            enable = true
        },  {
            // TCP
            url = "google.com.sg:443"
            env = "dev"
            form_monitor_type = "tcp"
            enable = false
        }, {
            // ICMP
            url = "google.com.sg"
            env = "dev"
            form_monitor_type = "icmp"
            enable = false
        }
    ]


Lots of errors, can't seem to figure out how to add the imported Aseprite file to the Godot scene

On Godot 4.1.1 stable, Windows:
After I installed and enabled the plugin I saved a basic Aseprite Animation (created as a new file, all defaults, just added 4 frames) into the res folder. I then selected the *.aseprite file and in the Import tab I switched to the "Aseprite -> Sprite with AnimationPlayer" preset. I let Godot save and restart and after the restart I tried to drag the *.aseprite file onto the Scene Panel top node of a new scene. This did not work. Then I noticed this wall of red errors:

I just closed Godot, restarted and tried again in a new scene, and I noticed there are no errors in the beginning, also none when clicking the *aseprite file, but this block appears as soon as I try to click-drag the aseprite file:

Aseprite File I used:
Sprite-0002.zip

I couldn't get the same errors as you in the output window, but your file helped me find one bug - a small typo in handling the default animation when no tags were specified in the *.aseprite-file.
Please check your new version of the plugin. Perhaps the problem was in this typo. And let me know if anything has changed! 🙏

I deleted the Sprite-0002.aseprite file, uninstalled the addon (first disabled it, then deleted the nklbdev.importality folder from the addon folder), then I restarted Godot.
Then I added the nklbdev.importality folder from the newly downloaded zip to the addon folder and the the Sprite-0002.aseprite file to the res:// folder of my project and started Godot 4.1.1 stable again.
I go to the Plugins in Project Settings and as soon as I enable Importailty, these errors appear:

I then select the Sprite-0002.aseprite file and go to the Import tab, select the "Aseprite -> Sprite AnimationPlayer" preset and hit "Reimport", then these errors appear:

If I try to drag the Sprite-0002.aseprite file onto the Root node the same errors appear again.

Try to remove the file .godot/imported/Sprite-0002.aseprite-aa78087caaed2c076fd048998bb5544ad.ctex.
And all the files from .godot/imported/ that names is starting with Sprite-0002.aseprite.
And Sprite-0002.aseprite.import from project.
They can store old broken data. Let Godot reimport them.

I closed Godot and deleted all Sprite-0002... files from the project, so from the Import folder as well as from the res:// folder, including the Sprite-0002.aseprite.import file from the res:// folder.
Then I restarted Godot 4.1.1 to verify it would start without complaints. This went fine.
I then closed Godot again and added the Sprite-0002.aseprite file into the res:// folder and then started Godot, which greeted me with this error message:

Ok, I went through the same steps as before, enabeling the addon worked without errors, however after I dragged the aseprite file into the res:// folder, I got these error messages:

Please, set up temporary files directory path and aseprite command like on screenshot

Is this something you expect all users to do? If so I think it would be necessary to mention this explicitly in the "How to use" section on Github repo here.
Currently the steps just mention the Import Tab and it's settings.

I'm sorry that this caused you inconvenience. I didn't know it would work. I have described how to work with each editor on the wiki, and I expected users to immediately search for an article about the editor they are using.
This is helpful for me, thanks. I will fix the readme so as not to mislead users! 👍

Definitely mention it in the How to that users have to go into the Project settings, otherwise I guarantee you a lot of people will miss this.
I also don't quite understand what folder this Temporary Files Directory Path is. I don't have such a folder or folder structure. Can this be any folder anywhere? If it can be any folder, why not use the OS user or temp folder?
I also find this screenshot confusing as it has settting for apps I might not have. Why does the plugin need a reference to the Aseprite executeable anyway?

If you don't have the Aseprite application installed, then the plugin will not be able to import data from *.aseprite-files, because it does not have the ability to parse these files on its own and flatten all the cels into resulting frames images. I'm sorry, but it is.
You can use any directory on your system as the directory for temporary files. But I advise you to use a directory that will not contain files that other applications work with, so that there are no collisions between them.

f you don't have the Aseprite application installed, then the plugin will not be able to import data from *.aseprite-files, because it does not have the ability to parse these files on its own and flatten all the cels into resulting frames images. I'm sorry, but it is.

I would also mention this on the Github repro. A lot of Godot users download premade assets from itch.io, opengameart.com, Kenney and other places which sometimes come as *aseprite files. Knowing this before downloading installing and trying your plugin might save them a lot of time and trial and error.

Thank you!
I still have an application to test the functionality of the plugin with LibreSprite instead of Aseprite. This is a free analogue of Aseprite. Perhaps if users don't have the option to buy or build Aыeprite from source files, they can use LibreSprite instead.

So I set the Temp folder and Aseprite executeable path, now I get these errors:

I have to say this is a pretty tiring setup experience. My enthusiasm is pretty much gone at this point.

I understand and again I apologize. Now I will test the plugin on your version of Aceprite. Perhaps it does not support some export option specified in the documentation for its CLI

I added LibreSprite support and simplified usage of Aseprite/LibreSprite CLI.
I hope that now your import will pass without errors.


perf: actually only process each dsq once

5 minute profiling shows previous usage around ~7% and current usage around ~2%
Issue being fixed or feature implemented
Due to us rapidly receiving multiple duplicates of DSQueue's, we start processing them before it's added the the vector of processed ones, we probably at one point tried to minimize locked time, but that's not productive here
What was done?
Expand the locked scope to ensure we don't double process.
How Has This Been Tested?
Ran full node for 5-10 minutes
Breaking Changes
Should be none
Checklist:
Go over all the following points, and put an x in all the boxes that apply.

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated relevant unit/integration/functional/e2e tests
[ ] I have made corresponding changes to the documentation
[x] I have assigned this pull request to a milestone (for repository code-owners and collaborators only)

we probably at one point tried to minimize locked time, but that's not productive here

POTENTIAL DEADLOCK DETECTED
Previous lock order was:
 (2) 'cs_deqsessions' in coinjoin/client.cpp:987 (in thread 'scheduler')
 (1) 'cs_vecqueue' in coinjoin/coinjoin.cpp:191 (TRY) (in thread 'scheduler')
Current lock order is:
 (1) 'cs_vecqueue' in coinjoin/client.cpp:71 (TRY) (in thread 'msghand')
 (2) 'cs_deqsessions' in coinjoin/client.cpp:1243 (in thread 'msghand')

Okay, so partially reverted and added a new mutex to prevent processing DSQueue in parallel. I also ended up changing some TRY_LOCK to just LOCK, can you maybe explain why we're using TRY_LOCK here?

can you maybe explain why we're using TRY_LOCK here?

We had some issues with multiple threads locking it back then. I don't remember what these issues were exactly and I'm not sure they are still there, could probably use LOCK() now. Mixing on testnet seems to be working ok.
Re changes:

no need for extra scope for cs_ProcessDSQueue, it's held till the end of the function;
should have no unrelated changes in LogPrints.

This PR can/should be trimmed to basically
diff --git a/src/coinjoin/client.cpp b/src/coinjoin/client.cpp
index d538b277ed..2db59e8e88 100644
--- a/src/coinjoin/client.cpp
+++ b/src/coinjoin/client.cpp
@@ -67,10 +67,10 @@ void CCoinJoinClientQueueManager::ProcessDSQueue(const CNode& peer, PeerManager&
         }
     }

-    {
-        TRY_LOCK(cs_vecqueue, lockRecv);
-        if (!lockRecv) return;
+    LOCK(cs_ProcessDSQueue);

+    {
+        LOCK(cs_vecqueue);
         // process every dsq only once
         for (const auto &q: vecCoinJoinQueue) {
             if (q == dsq) {
@@ -123,9 +123,7 @@ void CCoinJoinClientQueueManager::ProcessDSQueue(const CNode& peer, PeerManager&
         ranges::any_of(coinJoinClientManagers,
                        [&dsq](const auto &pair) { return pair.second->MarkAlreadyJoinedQueueAsTried(dsq); });

-        {TRY_LOCK(cs_vecqueue, lockRecv);
-        if (!lockRecv) return;
-        vecCoinJoinQueue.push_back(dsq);}
+        WITH_LOCK(cs_vecqueue, vecCoinJoinQueue.push_back(dsq));
         dsq.Relay(connman);
     }
 }
diff --git a/src/coinjoin/client.h b/src/coinjoin/client.h
index cd5e28317d..f629df3b74 100644
--- a/src/coinjoin/client.h
+++ b/src/coinjoin/client.h
@@ -159,6 +159,7 @@ class CCoinJoinClientQueueManager : public CCoinJoinBaseManager
 private:
     CConnman& connman;
     const CMasternodeSync& m_mn_sync;
+    mutable Mutex cs_ProcessDSQueue;

 public:
     explicit CCoinJoinClientQueueManager(CConnman& _connman, const CMasternodeSync& mn_sync) :

I intended for dsq.Relay to be outside of the locked scope; adjusted to reflect that, which means that we do need that additional scope. Thoughts now? I could trim this PR down a bit, but I think I'd prefer to keep relay out of locked scope

I'd prefer to keep relay out of locked scope

why?

Just because it's relatively expensive and there's no reason to block processing other dsqueue during that time.


BUG: Unhandled error in plugin discover: Multiple rows were found for one_or_none()

Expected behaviour:
download through discover plugin
Actual behaviour:
bug error in discover plugin
Steps to reproduce:

Step 1: run task get-shows

Config:
 templates:

      #
      # Show template
      #
      tv:
        configure_series:
          settings:
            # Configure all the series options to your taste
            identified_by: ep
            #tracking: backfill
            #upgrade: yes #download higher quality once available
            timeframe: 4 hours
            target: hdtv-bluray <=720p
            quality: <=720p hdtv|webdl|webrip
            #path: d:\_flexget\_torrentTest\
            path: d:\_Transmission\_Autoleech\
            # {{series_name}}/Season {{series_season}}/  # This will sort your downloads if you are using one of the output plugins which supports it
          from:
            #entry_list: trakt shows
            trakt_list:
              username: '{{ secrets.trakt.usr }}'
              account: '{{ secrets.trakt.usr }}'
              list: following
              type: shows

    #
    # Tasks
    #
    #

    tasks:

      # This task will look for episodes you have added to your `My TV Shows` list at trakt.
      #
      #
      sync-trakt:
        priority: 7
        #seen: global
        next_trakt_episodes:
          username: '{{ secrets.trakt.usr }}'
          account: '{{ secrets.trakt.usr }}'
          context: watched
          list: Following
          position: next
        accept_all: yes
        #disable: seen
        set_series_begin: yes
        #list_add:
        #  - entry_list: trakt shows

      # this will start an series from episode in Following
      # It will set the `begin` series option for that show, then remove the episode and re-add it to your `My TV Shows` list as a show.
      #
      #
      sync-episode:
        priority: 6
        #seen: local #disable seen so all episodes from following list are accepted
        disable: seen
        accept_all: yes
        trakt_list:
          username: '{{ secrets.trakt.usr }}'
          account: '{{ secrets.trakt.usr }}'
          list: Following
          type: episodes #finally! working
        set_series_begin: yes  # set beginning episode
        list_remove: #remove episode from following
          - trakt_list:
              username: '{{ secrets.trakt.usr }}'
              account: '{{ secrets.trakt.usr }}'
              list: Following
              #type: episodes # not required!
        list_add:
          - trakt_list:
              username: '{{ secrets.trakt.usr }}'
              account: '{{ secrets.trakt.usr }}'
              list: Following
              type: shows

      # This task is what will actually download your shows.
      # See http://flexget.com/wiki/Cookbook/Series/Search for a more detailed explanation of how this search based task works, as well as an example of how to use your `tv` template on an rss based task alongside.
      get-shows:
        #retry_failed:
        #  retry_time: 1 seconds
        #  retry_time_multiplier: 1
        #  max_retries: 100
        priority: 10
        # If this is your only task getting shows, you can just include the configure_series plugin here instead of using the template.
        template: tv
        discover:
          what:
            - next_series_episodes: yes
            #- next_series_episodes:
            #    backfill: yes
            #    from_start: yes
          from:
            # Pick a search plugin(s) http://flexget.com/wiki/Searches
            - torrentleech:
                rss_key: '{{ secrets.torrentleech.rss }}'
                username: '{{ secrets.torrentleech.usr }}'
                password: '{{ secrets.torrentleech.pass }}'
                category: [26]
        # Also add an appropriate output plugin here (perhaps `transmission` or `deluge` if you are using those clients.) http://flexget.com/wiki/Plugins#Output
        regexp:
          reject:
            - spanish
        pushover:
          userkey: []
          apikey: []
          title: "FlexGet"
          message: "{{ series_name }} S{{  '%02d'|format(series_season) }}E{{ '%02d'|format(series_episode) }} ({{ quality|upper }})"
        download: yes
        #list_remove:
        #  - trakt_list:
        #      username: '{{ secrets.trakt.usr }}'
        #      account: '{{ secrets.trakt.usr }}'
        #      list: Following
        #      type: episodes

Log:
 2016-10-04 18:16 VERBOSE  input_cache   get-shows       Restored 26 entries from db cache
    2016-10-04 18:16 VERBOSE  discover      get-shows       Discovering 24 titles ...
    2016-10-04 18:16 INFO     discover      get-shows       Ignoring interval because of --discover-now
    2016-10-04 18:16 INFO     task          get-shows       Plugin next_series_episodes has requested task to be ran again after execution has completed. Reason: Look for next season
    2016-10-04 18:16 CRITICAL task          get-shows       BUG: Unhandled error in plugin discover: Multiple rows were found for one_or_none()
    Traceback (most recent call last):
      File "d:\code\python\lib\site-packages\flexget\task.py", line 477, in __run_plugin
        return method(*args, **kwargs)
      File "d:\code\python\lib\site-packages\flexget\event.py", line 23, in __call__
        return self.func(*args, **kwargs)
      File "d:\code\python\lib\site-packages\flexget\plugins\input\discover.py", line 289, in on_task_input
        entries = self.estimated(entries, estimation_mode)
      File "d:\code\python\lib\site-packages\flexget\plugins\input\discover.py", line 201, in estimated
        est_date = estimator.estimate(entry)
      File "d:\code\python\lib\site-packages\flexget\plugins\estimators\est_released.py", line 28, in estimate
        estimate = estimator(entry)
      File "d:\code\python\lib\site-packages\flexget\plugins\estimators\est_release_series_tvmaze.py", line 53, in estimate
        episode = lookup(**kwargs)
      File "d:\code\python\lib\site-packages\flexget\utils\database.py", line 34, in wrapper
        return func(*args, **kwargs)
      File "d:\code\python\lib\site-packages\flexget\plugins\internal\api_tvmaze.py", line 452, in episode_lookup
        TVMazeEpisodes.series_id == series.tvmaze_id)
      File "d:\code\python\lib\site-packages\sqlalchemy\orm\query.py", line 2698, in one_or_none
        "Multiple rows were found for one_or_none()")
    MultipleResultsFound: Multiple rows were found for one_or_none()

Additional information:

Flexget Version: latest
Python Version: dont know
Installation method: pip install
OS and version: windows 10 64b
Link to crash log: see crash log above

Please verify that the following data is present before submitting your issue:
-Paste or link to a paste service (pastebin for example) of relevant config (preferably full config including templates if present. Remember to redact any personal information!

Paste or link to a paste service of debug level logs of relevant task/s. Use flexget -L debug execute --tasks <Task_name>
Flexget version (Use flexget -V to get it).
Full Python version (2.7.11 for example). Run python -V to get it.
Installation method (pip, git install, etc.)
OS and version
Attach crash log if available

Could you run it with debug flag and upload the log somewhere?


Fix a bug when iterating dict

Codecov Report

Merging #1894 (79926ed) into main (2ac5213) will increase coverage by 29.81%.
The diff coverage is 0.00%.

@@             Coverage Diff             @@
##             main    #1894       +/-   ##
===========================================
+ Coverage   34.97%   64.78%   +29.81%
===========================================
  Files          89       89
  Lines        9804     9804
===========================================
+ Hits         3429     6352     +2923
+ Misses       6375     3452     -2923

Impacted Files
Coverage Δ

python/graphscope/framework/dag.py
81.63% <0.00%> (+1.02%)
:arrow_up:

python/graphscope/tests/unittest/test_java_app.py
49.33% <0.00%> (-50.67%)
:arrow_down:

python/graphscope/analytical/app/java_app.py
24.24% <0.00%> (-44.95%)
:arrow_down:

python/graphscope/deploy/hosts/cluster.py
84.81% <0.00%> (-2.54%)
:arrow_down:

python/graphscope/client/rpc.py
76.85% <0.00%> (-0.93%)
:arrow_down:

python/graphscope/framework/graph_schema.py
65.19% <0.00%> (+5.63%)
:arrow_up:

python/graphscope/client/utils.py
83.22% <0.00%> (+6.83%)
:arrow_up:

python/graphscope/client/session.py
65.89% <0.00%> (+7.32%)
:arrow_up:

python/graphscope/framework/operation.py
87.67% <0.00%> (+10.95%)
:arrow_up:

... and 44 more

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 2ac5213...79926ed. Read the comment docs.


Container started by Konlet can only use json-file logging driver

Hello,
When Konlet starts a container, logging driver is explicitly set to json-file in the code :
https://github.com/GoogleCloudPlatform/konlet/blob/fcc4fb619405c7ec26e8026ab1196a3f043bbf0e/gce-containers-startup/runtime/runtime.go#L311
It will be convenient to be able to change the driver (for example to gcplogs if logs have to be redirected to Google Cloud Logging (Stackdriver)).
Could it be possible to get the logging configuration from /etc/docker/daemon.json, or at least to be able to choose the logging driver?
Thank you very much.

There is no documentation about this internal GCP incompatibility, as well as a 3rd party tutorial implying the contrary.
There should at least be a note that you can't use gcplogs with GCE in the docs, as assuming the contrary is perfectly reasonable.

Hey,
the agent sets the logging driver to json-file, but these logs should be then picked up by the stackdriver-logging agent (running as a different container) and should be available in Stackdriver: https://cloud.google.com/compute/docs/containers/deploying-containers#viewing_container_logs
Does this not work for you?

@pderkowski Ah, I was trying to setup structured logging, but I guess I should have configured the agent for structured logging. I came across that page a few times during troubleshooting, but I couldn't even tell it was related to Compute Engine. I don't think the compute engine docs mention the agent, it's just referred to as "Stackdriver Logging"
So, basically, if you're logging from a container on GCE you are using the logging agent

Thanks for your answers.
I was confused because in the GCE instance I've got (created with Terraform), there was no stackdriver-logging-agent container started.
I've noticed that when creating a GCE instance with a container from the Console, a metadata entry google-logging-enabled = "true" were added. I suppose that the presence of this metadata entry have consequences on Konlet behaviour (start or not the stackdriver-logging-agent). Am I right?
Anyway, in my case, I was missing this metadata key/value when creating the instance with Terraform (because I didn't know it existed). So basically, I just had to define the metadata of my instance as following :
  metadata {
    gce-container-declaration = <<EOF
spec:
  containers:
    - name: my-container
      image: 'my-image'
EOF
    google-logging-enabled = "true"
  }

The container stackdriver-logging-agent in the instance now redirects logs from my-container's stdout to Stackdriver.

@norbjd
You are right, this metadata key is necessary. Please note though that creating instances with containers through the instance API is not an officially supported mode and can change any time without notice.

Hello.
Another problem that occurs because of hard coding json-file as the log driver with the default options is that by default it will create one uncompressed and unlimited log file that fills up the VM disk until it fails.
This happens now when using the gcloud beta compute instances create-with-container .
Thanks.

Hi @pderkowski ,
After some research, I'm agree with @yuvaldrori 's opinions. Current settings about logging driver will create one uncompressed and unlimited log file, even container stackdriver-logging-agent is running. I think this is not acceptable for production usage, right ?
So maybe add max-size & max-file settings to json logging driver config section is valid options seems all container logs will be redirected to stackdriver for now ?

Having the log-driver be configurable (and preferably respecting what is in /etc/docker/daemon.json) would help in use cases where the user doesn't want to use stackdriver for application logs for whatever reason.
Forcing the user to use the json-file logger and thus stackdriver makes forwarding the logs to other centralized logging services a pain that is completely unneccessary (set up pub/sub channel, create instances that receive and parse log messages, perform the forwarding, add monitoring of this instance, set up error handling etc.. All of this could be made superfluous by letting docker handle the logging.)


modified date property should be on each version

I think it's extremely important to store modified date property not only on the main version object but also on every single version sub objects, otherwise it's impossible to track changes in time.
If you have no time please tell me I'd fork and pull-request this.
Thanks!

Hi, I have no time asap to implement that feature. Could you send me a pr

Sure, will do it along with this issue


Outer joins

This is a first pass at adding support for outer joins. The interface isn't final, not a lot of thought was put into the name of the new field so I welcome feedback on that.
Closes #4176

LGTM, whatever that's worth, other than a couple of uses of NewPFSInputOpts in src\server\worker\datum\iterator_test.go that haven't been updated
I'm assuming the passing build means that test isn't being run?


[Firestore] firestore.Timestamp.now() different in admin/web

Let me know if I should report this at nodejs-firestore GitHub repo
[REQUIRED] Step 2: Describe your environment

Operating System version: Mac OSX
Firebase SDK version: 8.6.0
Firebase Product: Firestore admin/web
Node.js version: 10.15.1
NPM version: 6.11.2

[REQUIRED] Step 3: Describe the problem
Timestamps from admin library are different from timestamps in web library:
// admin.firestore.Timestamp.now();
Timestamp {
  "_nanoseconds": 760000000,
  "_seconds":<PHONE_NUMBER>,
}

// firebase.firestore.Timestamp.now();
Timestamp {
  "nanoseconds": 760000000,
  "seconds":<PHONE_NUMBER>,
}

@morgs32 Thanks for filing this issue! While we try to match the APIs and feature set between the Firestore Mobile Web SDK (https://www.npmjs.com/package/@firebase/firestore) and the Firestore Server SDK (https://www.npmjs.com/package/@firebase/firestore), they are inherently different products and don't share any common code or functionality. As such, we currently cannot guarantee that the internal APIs are consistent.
That being said, if there is a use case we are not supporting due to these differences, please do let us know and we can try to address this.

Ok that makes sense. I'm trying to do something special on the server (like checkout) and send the data back to the client via JSON. Then I was going to let the client pretend it got the data from firebase directly. Right now I'm not able to do an update from the client with that JSON, even though I THINK it looks the same. I'm not yet finished setting up an emulator to test exactly which rules seem to be failing. I'll close this for now and report back if I'm certain it's because of these timestamp objects.
In which case it a) wouldn't be the end of the world to refetch the data on the client or b) something more clever.
Thanks.


Update .gitignore

Update .gitignore

Your force is not strong enough to merge into the academy. Practice you must, young padawan.


Error. Keys.json not found.

Describe the bug
Hello, I all ready install python-binance and use command python PumpBot.py and still showing this
Traceback (most recent call last):
File "PumpBot.py", line 1, in
from binance.client import Client
ImportError: No module named binance.client
Next I use command python3 PumpBot.py and show this
Error. Keys.json not found.
Remember to rename your keys.json.example to keys.json.
so I go to change keys.json.example to keys.json. and still showing this error by using command with python3 and using python its still Traceback (most recent call last):
File "PumpBot.py", line 1, in
from binance.client import Client
ImportError: No module named binance.client
nothing change, what I can do?

Make sure you install sammchardy's Python Binance API

I use command on terminal pip install python-binance so I think this is it still nothing change

and now I install by using command pip install python-binance-API and after python3 PumpBot.py I have this
Traceback (most recent call last):
File "/home/strzyga/Pulpit/PumpBot-master/PumpBot.py", line 1, in
from binance.client import Client
ImportError: cannot import name 'Client' from 'binance.client' (/home/strzyga/.local/lib/python3.9/site-packages/binance/client.py)

You are not installing the python-binance API correctly. Use these instructions to correctly install the API.

 Perhaps the install isn't being completed correctly.

This is a long shot but, follow the steps this reply does and see if it fixes it.
I.e. download Visual Studio 20__ installer, then select Desktop Development With C++.

Nothing change, on this weekend I will change system on Linux Then I will try Run this bot after steps


[Proposal] Remove Hungarian Notation

I know, it's not a big deal but what do you think about removing hungarian notation from this repo?
In my opinion there is no positive reason to use that because here is the out side of AOSP.
Thx in advance.

Thanks for your suggestion.
Firstly I don't have a strong opinion on whether or not the code should follow Hungarian notation since there isn't a practical advantage whichever way the code follows.
So in that sense, I don't see a practical value in converting the existing code into non-Hungarian style and vice versa.
Secondly when I started the project, I expected the code reviewers and contributors from Google where the majority of Android projects still follow the Hungarian style even outside of AOSP
(Actually there are some non-Hungarian style Android projects though).
So it was quite natural that this project follows the Hungarian style from the beginning.
Does that answer your question?

Okay, thx for your answer.


feat: add custom width

closes #4

Hey cheers for the updates, can you run pre-commit over the code please as the indentation has been changed
Thanks :)

Hey cheers for the updates, can you run pre-commit over the code please as the indentation has been changed. You may need to pip install it.
pre-commit run -av

Any pylint stuff can be ignored
Thanks :)

amended in a1b1aee

Cheers, though it looks to still be using spaces


Change nav behavior on click; add submenu to mobile nav

This change eliminates taking the user to /places or /bookings when clicking on the Destinations or Bookings nav links. In mobile views, the click now opens a submenu. A call to action btn is also added to Bookings dropdown.
Note that this PR is for the functionality changes only. There were no new designs to go by. I plan to review the changes with a designer after merging and will update styling after that review.
Needs https://github.com/lonelyplanet/destinations-next/pull/471 to make Bookings CTA appear

Changes made, @jcreamer898

cool


Parameterize custom User Registration page

Adds boolean config value to enable/disable custom registration page.
Adds boolean value to database in idp config (to easily enable/disable for debugging).
Adds config variables for custom registration page components.
Deletes custom logo image to use the one supplied by the branch.
Checklist:

[X] Have you successfully deployed to an AWS account with your changes?
[X] Have you written new tests for your core changes, as applicable?

Ticket: ALS-3822
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Reviewed in office hours, 10/12/2022.


Object.keys: argument is not an Object (IE11)

The Problem
Validation on Internet Exploder (sic) 11 causes error: Object.keys: argument is not an Object
Steps to Reproduce
For example with LocalForm. Same problem occurs with Form as well. Create Form with validations object on the form. Focus on field, check console.log and you'll see the error message. OnChange triggers it.
Error seems to be caused by line 364 in form-actions-reducer.js.
Expected Behavior
No errors on IE11.
Actual Behavior
On Internet Explorer 11: Object.keys: argument is not an Object
Other browsers seem to be fine.
Reproducible Code Example
<LocalForm
    model="user"
    noValidate
    validators={{
        firstName: {
            isRequired: (value) => value && value.length,
        }
    }}
>
    <Control.text
        model=".firstName"
    />
</LocalForm>

Sorry, couldn't get the CodePen fork working.

@davidkpiano I'm still experiencing this same issue on IE11 after the 1.12.0 update. I'm seeing this with almost an identical config to the one above only on the  component rather than LocalForm.
Inputs are set up to validateOn="change" and there is a 300ms debounce as well.
The stack trace points to the updateParentsForms function. I can try to put together some more detailed tests later.

Please do, currently nothing in updateParentForms should call Object.keys.

Thanks @hitchcockwill I was running into the same issue using a combination of 'create-react-app' and had to simply add es6-shim to the polyfills.

I am getting error Object.keys: argument is not an Object , I have IE version 11.1805.15063.0


feat: node增加节点信息参数便于透传额外业务信息

👀 PR includes

✨ Feature

[x] New feature

:tada: This PR is included in version @antv/s2-v1.7.0-alpha.2 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version @antv/s2-v1.8.0-alpha.1 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Spacebar closes built-in browser. Cant type in affixes with spaces

🐞 bug report
Describe the bug

To Reproduce

Expected behavior

🌍  Your Environment

OS:  e.g. win10 64
Version:  e.g. 0.6.9 portable
PoE:  e.g. Steam 3.10.0/e English

0.6.13 (2020-03-25)

fix spacebar closes built in browser by disabling keyboard support (#461)


Return invalid_union on dirty results

When one or more of the results in the union is dirty the union would
previously just return that result. However this can make the error
message strange and inconvenient to override in some cases, drops the
rest of the dirty results if there are multiple, and hides the fact that
it's a union.
Therefore, it's changed to return an invalid_union issue with all the
dirty results. When there are some dirty results, the aborted results
are not included, since they are not relevant. When there are no dirty
results, all the results are included as before.
An example of an error message that's strange and inconvenient to
override is if you have a union of two strict objects, e.g.:
z.union([
    z.object({ a: z.number() }).strict(),
    z.object({ b: z.number() }).strict()
])

If the input is { a: 1, b: 1 }, it would previously return the result
from the first object, which would be code unrecognized_keys with keys
b. If you wanted to override the error message, you would have to do
that in the first object, it wouldn't suffice to override the message in
union.
With this patch, the result would be code invalid_union with the two
unrecognized_keys in the unionErrors array. Since the error is now
always invalid_union it suffices to override the error message in union
for both this case when both keys are provided, and for the case when
none of the union schemas match.
Fixes #866
The PR also includes one more commit:

Mark union as dirty when the results are dirty
When one or more of the results of the schemas in the union are dirty, I
think it makes sense to mark the union itself as dirty too.

Uh, please don't close it. Could someone review it please? I can resolve the conflicts that has occurred if someone responds.

Still waiting for feedback.

...

Why is it closed?

It never got any review or feedback and there's a bot closing PRs without any activity. I gave up trying to keep it open in the end.
IMO having a bot that automatically closes PRs that haven't been reviewed is pretty hostile.

I see the open PRs now that are older than 3 months haven't been closed though, so maybe the bot was removed. Unfortunately, I don't have permission to reopen the PR.


README: Update badge for GAPI v1.1.0

@sayboras oh I see you just posted v1.2.0 support PR at https://github.com/cilium/cilium/pull/35216 :D ... what do you think we should do with the badge, update to 1.1.0 since that's the current supported Cilium release or 1.2.0 in your PR since Cilium will soon support 1.2.0?

oh I see you just posted v1.2.0 support PR at #35216 :D ... what do you think we should do with the badge, update to 1.1.0 since that's the current supported Cilium release or 1.2.0 in your PR since Cilium will soon support 1.2.0?

Good catch, I have added the changes to update the badge to v1.2.0 in the PR https://github.com/cilium/cilium/pull/35216 as well. Upstream report is pending for review https://github.com/kubernetes-sigs/gateway-api/pull/3372.

README is typically only inspected for the main branch so no need to backport.


Loading from cache funciton does not refresh for removed bulbs

When bulbs are removed physically, the plugin still tries to load bulb from cache leaving unresponsive bulbs
https://github.com/kpsuperplane/homebridge-wiz-lan/blob/c34da79a207b52df747a6bd02d68b83c51c657f1/src/wiz.ts#L40
https://github.com/kpsuperplane/homebridge-wiz-lan/blob/c34da79a207b52df747a6bd02d68b83c51c657f1/src/wiz.ts#L82
https://github.com/kpsuperplane/homebridge-wiz-lan/blob/c34da79a207b52df747a6bd02d68b83c51c657f1/src/wiz.ts#L126

will look into the details later

for now it will not result in any issue other than leaving an unresponsive bulb. however this is potentially dangerous as it is trying to update a non-existing bulb

Unhandled error thrown inside write handler for characteristic: Cannot read property 'state' of undefined

Solution: initAccessory should have returned an boolean value indicate whether the bulb is initialized successfully
And only load those that has been initialized successfully
Further maybe clean up automatically or give user an option to clean up on load
im not familiar with the language, but I can try open a fix PR later

sry about the messy info
looks like the cache reloading part is being handled by homebridge. not sure if it still a plugin level fix

closed as it's very likely Hoobs specific cache issue


Callout number (conum) not rendered in the source block

1.5.0.beta.1
Asciidoctor produces HTML just fine, PDF has legend printed, styled, but no conums in the block code. I switched off the source formatter (rouge) and result is the same.
My source
----
SELECT c
FROM EHR e <1>
CONTAINS COMPOSITION c <2>
----
<1> legend1
<2> legend2

My theme:
base:
  font:
    family: OpenSans
    size: 10
  line:
    height: $base_line_height_length / $base_font_size
    length: 14
code:
  background:
    color: #333333
  border:
    radius: 5
    color: #333333
  font:
    size: 7
    family: Code
    color: #ffffff
conum:
  font:
    family: M+ 1mn
    color: #ffffff
    size: $base_font_size
  line:
    height: 4 / 3
font:
  catalog:
    OpenSans:
      normal: OpenSans-Regular.ttf
      italic: OpenSans-Italic.ttf
      bold: OpenSans-Bold.ttf
      bold_italic: OpenSans-BoldItalic.ttf
    Code:
      normal: RobotoMono-Regular.ttf
      italic: RobotoMono-Italic.ttf
      bold: RobotoMono-Bold.ttf
      bold_italic: RobotoMono-BoldItalic.ttf
    M+ 1mn:
      normal: mplus1mn-regular-ascii-conums.ttf
      bold: mplus1mn-bold-ascii.ttf
      italic: mplus1mn-italic-ascii.ttf
      bold_italic: mplus1mn-bold_italic-ascii.ttf
    Noto Serif:
      normal: notoserif-regular-subset.ttf
  fallbacks: Noto Serif

I just tested this on my own system, using both my own custom theme and the default theme, and the conums are fine on my system. I'm running beta 1 on Asciidoctor 2.0.9.
My first thought was that this could be a font issue, but my themes are also using mplus1mn-regular-ascii-conums.ttf
I suggest trying again with the default theme.

I only now realized you a re completely right. My theme defined a different font for the code blocks (code_font_family) and fallback is not on the M1 mn font.
Corrected, tested, it works. Sorry to bother!


Load Testing APIs with Locust

Load Testing APIs with Locust
Here, we're gonna discuss how can we load test our APIs with Locust tool (written in Python).

nice one


New package: reach_me v0.1.0

Registering package: reach_me
Repository: https://github.com/ga74kud/reach_me.jl
Created by: @ga74kud
Version: v0.1.0
Commit: c42687ae21ca6d044218a07bc6c2db4afcc1ae21
Git reference: master

This package looks like an example?

This package looks like an example?


[WFLY-9004] Artemis leaks JGroups channels on reload

Refactor messaging-activemq subsystem code to create channels on demand
every time Artemis creates a JGroupsBroadcastEndpoint.
The ActiveMQServerServices track only the channels created by the discovery
groups since they can be referenced by Artemis RA (when the RA is using
JGroups to discover the Artemis servers).

@pferraro Could you review this PR please?
I changed the messaging-activemq subsystem so that it creates/closes channel every time that Artemis requests it (instead to have the channels created when the server is started).
Do you see any issue with that new behaviour?
Would there be any difference if the channel is a regular channel or a ForkChannel?

@jmesnil In general, I think this change makes sense.  I like that the same object that creates the channel closes it.  In the case where the ChannelFactory is a ForkChannelFactory, JChannel will still be created on startup (a ForkChannelFactory is built on top of a JChannel), but the fork channels will not be created until ActiveMQ request them from the endpoint.

@pferraro thanks for the review. I'll change the JGroupsBroadcastEndpointFactory to get rid of that ugly empty Map to make it more readable that only channels created by discovery groups needs to be accessed by the Artemis RA.


Shaky dispense in 2 uL aliquotation

Affected protocols:
2ul-aliquotation.VWForm
general_transfer.pro
Description:
The liquid is not always dispensed successfully because a small volume is transferred to an empty plate.

Added the option to pre-aspirate a volume of buffer which makes dispensing all sample easier but as a consequence dilutes the sample. Multi-step transfers (i.e. transfer volume > tip capacity) are not compatible. Set the buffer volume to 10 µL for the 2 uL aliquotation preset.


x/website: first example of race_detector doc does not work for newest versions

https://go.dev/doc/articles/race_detector
So this example with loop variable
func main() {
	var wg sync.WaitGroup
	wg.Add(5)
	for i := 0; i < 5; i++ {
		go func() {
			fmt.Println(i) // Not the 'i' you are looking for.
			wg.Done()
		}()
	}
	wg.Wait()
}

Should it have note with a link on loopvar-preview page?
Or should it be added new example like
func main() {
	var wg sync.WaitGroup
	wg.Add(5)
	var int i
	for i = 0; i < 5; i++ {
		go func() {
			fmt.Println(i) // Not the 'i' you are looking for.
			wg.Done()
		}()
	}
	wg.Wait()
}

Thanks for reporting.
CC @dvyukov, @ianlancetaylor.


Add support for SARIF output for secret scanning

Context
This PR adds support for generating reports in SARIF format when scanning for secrets.
See #869.
What has been done
The PR first introduces a --format (text|json) option, and make existing commands use it. --format json is a more verbose version of --json, but it makes it possible to add new formats without adding a new flag for each format.
Then it introduces a sarif value for --format. This value is only used by secret scan commands for now. Adding it to other verticals will be done separately.
Representing multi-match secrets in SARIF output
There is a bit of an impedance mismatch between ggshield secret output and SARIF output. A SARIF result is supposed to have one location, but a secret often contains multiple matches, so each match needs to be a separate location. To reconcile this, the result location starts at the start of the first match and ends at the end of the last match. Then each match is added as a "related" location.
This can be seen in this screenshot of a GitHub import of a ggshield SARIF document:

I am open to suggestions regarding better ways to represent multi-match secrets.
Validation
The code can be tested in different ways.
The first thing is to generate some SARIF report. This can be done with a command like this:
ggshield secret scan path -ry --use-gitignore . --format sarif -o myreport.sarif

Then you can try to use the generated report in different places:

SARIF website validator
VS Code provides at least two SARIF extensions
GitHub can import SARIF documents and display the results in the "Security" page of the project (see GitHub doc on this topic)

PR check list

[x] As much as possible, the changes include tests (unit and/or functional)
[x] If the changes affect the end user (new feature, behavior change, bug fix) then the PR has a changelog entry (see doc/dev/getting-started.md). If the changes do not affect the end user, then the skip-changelog label has been added to the PR.

For the multi match secret it does not seem ideal but it is probably the best we can do. Do we know how Github Advance security & others displays those with SARIF format ?

I have no idea :/

I tested with the validator and pycharm extension it looks good to me !

Oh, I could not find a Pycharm extension! Need to look again.


A11y_AzureDataStudio_Selectthedeploymentoption_ScreenReader:NVDA is announcig normal table as clickable.

.
GitHubTags: #SQL Azure Data Studio;#A11y_AzureDataStudio;#A11yMAS;#A11yTCS;#WCAG1.3.1;#DesktopApp;#NVDA;#Win32;
Environment Details:
Application Name: Azure Data Studio
Version: 1.12.0-insider (user setup)
Commit: 32df727ff9fe68421b004bf270cd509e4c5de165
Date: 2019-10-08T19:18:43.743Z
VS Code: 1.38.0
Electron: 4.2.10
Chrome: 69.0.3497.128
Node.js: 10.11.0
V8: 6.9.427.31-electron.0
OS: Windows_NT x64 10.0.18362
Additional Details:
NVDA 2019.2
Steps to Reproduce :
1.Install /Launch the application Azure data studio.
2.Navigate to connections and click on more action button.
3.Select “Deploy SQL Server big data cluster” from more action drop down.
4.Click on “Deploy SQL Server big data cluster” .
5.Start NVDA and Observe the announcement.
Actual:
NVDA is announcing the normal table as clickable as the table is not editable.
Expected:
NVDA should not announce the table as clickable.
User Impact:
Screen reader User will not able to understand for what purpose the check box is there.
Attachment for Reference:
A11y_AsureDataStudio_Selectthedeploymentoption_Screenreader2.pptx
Does this issue occur when all extensions are disabled?: Yes

@V-sheman  we have a similar issue and treated as exception due to the low impact of this behavior: https://github.com/microsoft/azuredatastudio/issues/6662, can we also close this issue?
@yualan , could you please help follow up on this?

Closing this as noted this was previously determined to be a low-impact issue and is something that would need to be fixed in SlickGrid anyways. Please reopen if there's a problem with this @V-sheman


[FEATURE REQUEST] Support for Unity UI Toolkit (UI Builder)

UI Toolkit is the new UI system for Unity. Can you add support for it?

This is a duplicate of #30.


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/channel-wg-leads
/assign knative-sandbox/channel-wg-leads
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/pkg 8d21ce6...dd15eb0:
  > dd15eb0 URIResolver verifies that services actually exist (# 2149)
  > 9593069 upgrade to latest dependencies (# 2154)

/lgtm
/approve


can't get message from .on

I'm facing the same issue as #20 so past and get works fine
```$sails.on("user", function (message) {
  console.log('someuser');

});
$sails.on("welcome", function (message) {
  console.log('welcome');

});```

I don't get any message. I can get it using the sails client but I'm wondering how does my angular app even know what host the message comes from? with the sails client I would do io.sails.url=myurl;
I'm using sails 0.11
edit: well, my bad... I was subscribing instead of using watch()...

@misterch0c there is also $sails.$modelUpdater(name, models<array>) which is not apparently documented.  You pass it the name such as "user" and an array that would be in your scope and it will update the array whenever something happens.
Also, $sailsProvider.url ($sailsProvider is injectable in the app's config) is where you can override the url.  The default is the current domain.


Not able to make it run

I tried the video on this site and that usage is not working. It would be helpful, if the exact usage can be provided.
Also, if the same trace file name is provided, instead of throwing error.. is it possible to overwrite the same file

I too followed the steps provided in the site, but nothing is working.

+1
I imported the project on Visual Studio and it does not build, there's some issue with the copy.bat file.
Detailed instructions would be great. I'm wanting to use the project, but I'm definitely not familiar with C# and Visual Studio, so it's kinda hard to setup everything without any explanation.
Could any contributor give some help with this? @JakubLinhart @jbarker7

@stefanteixeira have you tried a "Rebuild"?

@mk123 The exact usage should be documented on the main page- what problems are you experiencing?

Changed the build order on the project- should work now.  Please open a new issue if you have any issues.

@jbarker7 The build order was the problem.

@jbarker7 I tried to contact you by email months ago, but got no response. I'm using the project at the company I work and I want to contribute. The project is great but there are still some documentation and project issues and I want to talk with you about that. Can you shoot me an email at<EMAIL_ADDRESS>:)


Make it easier to view/change session data

Context

From research and support:
It would be useful to see session data in order to debug journeys, possibly useful to change that data too
Alternatives

It's possible to log session data to the terminal or browser console, using routes.js or layouts/main.html respectively, for example:
https://www.vickyteinaki.com/blog/more-efficient-prototyping-with-the-gov-uk-prototype-kit-step-by-step/
Additional information (if applicable)

We tried a Data page when testing the private beta of v13 and people didn't really understand it very well

Related to this: if the kit did start auto-logging session data to the console, it could consider logging locals too - for where users have added to locals / in the view.


Use PER_MONITOR_DPI_AWARE option if it's supported by OS

Fixes some problems described in #56341.
It is not an implementation of automatic scaling when a window moves from one monitor to another, but at least the PER_MONITOR_DPI_AWARE option can fix problems with unnecessary scaling for secondary monitors.
According to the compatibility table from https://learn.microsoft.com/en-us/windows/win32/hidpi/high-dpi-desktop-application-development-on-windows#per-monitor-and-per-monitor-v2-dpi-awareness, the option becomes available with Windows 8.1. If the OS version is below 8.1, the system_aware option will be used.

This #84948 issue matches better for PR, but discussion about PROCESS_PER_MONITOR_DPI_AWARE was in #56341.

Simply changing DPI awareness will make the UI unusable, since Godot will not auto-scale to match it.
See https://github.com/godotengine/godot/pull/86022 for the auto-scaling implementation (should be working, but still need some work to address differences in macOS and Windows API).

Well... yes. This code works only for godot application. If the application can scale well for different screen resolution. When the editor window moves to a display with a different scale factor, things get worse.

When the editor window moves to a display with a different scale factor, things get worse.

That's exactly why SHC_PROCESS_SYSTEM_DPI_AWARE was chosen.

Simply changing DPI awareness will make the UI unusable, since Godot will not auto-scale to match it.

We can probably use this outside of the editor at least, as it affects games that use the canvas_items or viewport stretch mode (and therefore automatically scale according to the window size) aexpect to look pixel-perfect.

I guess it can be an option in project settings, without proper DPI scaling it's bad for the editor, but if you are setting it for the running project and aware that you should handle scaling manually it's OK (the same can be done for macOS as well).

I was think about it, but I don't understand some details.
There is a short plan to make new option:

The "Allow hiDPI" checkbox becomes a choices list of 3 items "no hidpi", "system wide hidpi", "per monitor hidpi". The naming should be more adequate)
Somehow i need to convert old project options to new ones. I guess there is some standard way to make such a converter?
Documentation update. Should this be done in this patch? All languages?
Patch contains only Windows code. Looks like there is similar issues for MacOS. Is any other OS should be involved?

I experimented locally for a bit. It turns out that enabling per-monitor DPI for only the game and not the editor causes a minor annoyance with debugging/running the game from the editor. When the editor runs system DPI aware and launches a game that runs per-monitor DPI aware, the initial position of the game window can be way off. This is because the --position argument that the editor uses to position the game uses monitor sizes that has been DPI-virtualized. The argument gets interpreted differently by the game, which gets monitor sizes that are not DPI-virtualized. So far I haven't been able to think of a way to fix this nicely.

I was think about it, but I don't understand some details. There is a short plan to make new option:

The "Allow hiDPI" checkbox becomes a choices list of 3 items "no hidpi", "system wide hidpi", "per monitor hidpi". The naming should be more adequate)
Somehow i need to convert old project options to new ones. I guess there is some standard way to make such a converter?

Should we have a completely new option for this instead, so that we don't need to change the meaning and type of an existing option? Maybe it could be something like display/window/dpi/prefer_native_pixel_display?

Documentation update. Should this be done in this patch? All languages?

Translations will be handled separately on Weblate.

Patch contains only Windows code. Looks like there is similar issues for MacOS. Is any other OS should be involved?

Honestly I have no idea how it currently works on other platforms, especially macOS. (I don't think you need to implement it for all OSes yourself though.)

EDIT 2: Using SetThreadDpiAwarenessContext to temporarily switch to per-monitor DPI aware might also be an option, but only on Windows 10.

Windows versions below 10 are supported on a best effort basis, so it's fine to call this function as long as it has a no-op on older Windows versions.

Should we have a completely new option for this instead, so that we don't need to change the meaning and type of an existing option? Maybe it could be something like display/window/dpi/prefer_native_pixel_display?

This create complicated relations between two checkboxes. When one is checked, state of the other is ignored. Additionally, there is a big PR( #86022 ) which also affects the issue . That PR adds another option about dpi. However, that option can also be part of those choices list.


IOS-8858: Fix Toggles UI 'Clear Overrides bug'

There was a bug spotted by @albertodebortoli where the 'Clear Overrides' dialog is shown twice (shown again after selecting 'Clear Overrides').
After some investigation this is because the List View is re-drawn whilst the removeOverrides() function is called, but before it has finished. Once it has finished hasOverrides is set to false which prevents the dialog from being displayed again.
I have placed the call to this function inside a closure for it to be called on the main thread so it is completed before the List View is redrawn.
This also allows the correct view to be displayed after Clear Overrides is tapped, as shown below.
Before (bug)
https://github.com/TogglesPlatform/Toggles/assets/24379144/801d864d-0488-480f-9243-6782fb72a9d1
After (fix)
https://github.com/TogglesPlatform/Toggles/assets/24379144/c3711014-3c71-42f9-8d0c-cdc40fd901b0

I'm not too sure about a dispatch on main in SwiftUI land. The problem I see now is that the popup doesn't show the list of overrides that got deleted.

Repeating the operation shows those that were deleted in the previous one.


Updated RX portable layer for backward compatibility

Define pxFillInterfaceDescriptor in RX network interface code
Description

We had an issue where pxFillInterfaceDescriptor is undefined in the NetworkInterface.c of RX vendor.
This pull request defines pxFillInterfaceDescriptor function.

Test Steps

Verified internet connection can be established via Ethernet. and PubSub over MQTT works as expected.

Related Issue

https://forums.freertos.org/t/pxfillinterfacedescriptor-is-undefined-in-rx-networkinterface-c/21263/2
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Please apply the following patch to fix CI checks - 0001-Fix-formatting-and-spell-check.patch.

@xuan97z1
Thanks for taking time to contribute to FreeRTOS+TCP.

Thanks all for the prompt response and merging.


perldoc doesn't work as expected

man perlfaq shows the PERLFAQ(1perl) man page. This page states
The "perldoc" command line tool is part of the standard Perl distribution. To read the perlfaq:
    $ perldoc perlfaq
To search the perlfaq question headings:
    $ perldoc -q open

However, giving perldoc perlfaq throws No documentation found for "perlfaq".; here's an example.
$ perldoc -q open
No documentation found for "perlfaq1".
No documentation found for "perlfaq2".
No documentation found for "perlfaq3".
No documentation found for "perlfaq4".
No documentation found for "perlfaq5".
No documentation found for "perlfaq6".
No documentation found for "perlfaq7".
No documentation found for "perlfaq8".
No documentation found for "perlfaq9".

perldoc seems to be unable to find the POD pages for showing the documentation. I've seen that the perl man pages are stored as .gz files under /usr/share/man/man*, but I couldn't locate the POD files (no files ending .pl, .pm or .pod). I see that the PKGBUILD of the perl package has all the .pod files removed except the ones under /usr/share/perl5/core_perl (although the comment above it is erroneous: it says /usr/lib/perl5/core_perl is the directory exempted). Also the line above it: rm -f $pkgdir/usr/hsare/perl5/core_perl/*.pod has a typo.
However, one can find all of the documentation via man pages, but it may be difficult to read. E.g. perldoc -f say would give the documentation only for the function say while man perlfunc would show a man page which contains the documentation of all built-in Perl function and one has to search through them to find the function say's description.
System: MSYS (64-bit)
Perl Packages installed: perl perl-Authen-SASL perl-Convert-BinHex perl-Encode-Locale perl-Error perl-File-Listing perl-File-Next perl-HTML-Parser perl-HTML-Tagset perl-HTTP-Cookies perl-HTTP-Daemon perl-HTTP-Date perl-HTTP-Message perl-HTTP-Negotiate perl-IO-Socket-SSL perl-IO-stringy perl-LWP-MediaTypes perl-MIME-tools perl-MailTools perl-Net-HTTP perl-Net-SMTP-SSL perl-Net-SSLeay perl-TermReadKey perl-TimeDate perl-URI perl-WWW-RobotRules perl-ack perl-libwww
Neither perl nor the other packages were installed explicitly by me, if that matters. I explicitly installed only git and perl-ack.

Commit a89004b09f2e1cc890b1e52ea9e10a1712f53934 by @Alexpux fixes exactly the issue.


convertTransform plugin removes gradient

I'm not sure if this is by intention, but the convertTransform plugin removes the gradient transformations:
Gist with before and after:
https://gist.github.com/matbech/541687f496976fa23b9e
The relevant markup:
Before:
gradientTransform="matrix(.8738 0 0-.8738-112.82 718.94)"
After
gradientTransform="scale(NaN NaN)"

SVG syntax doesn't allow absence of space before minus sign in transformation. Where did you get such a file?

Adobe Illustrator 19, latest build (SVG Export plugin)

It requires rewriting of transform attribute parser, which is not that trivial or somewhat prioritized task.

Made it so in v0.6.1. No more errors, yay!


Notification When Alerts or Reports fails

Discussed in https://github.com/apache/superset/discussions/24077

Originally posted by TheRealYoze May 16, 2023
Here is the problem:
Sometimes, an alert or a report generation fails (see picture):

I would like to get alerted whenever an error has occurred.
Is there a way to do that?
Thanks in advance!

Thanks for opening the Discussion thread. That's the right place to have a feature discussion like this. I hope others are willing to take it up! I've moved it to the Ideas section, and will close this issue since it's not a bug. I think there might be another discussion on the same topic as well, it'd be worth digging around a bit for that to consolidate things.


tracking manual fixes to a GeoPackage

I was discussing this with @d2hydro. To derive an accurate network topology from a HyDAMO GeoPackage, small fixes are often needed, for instance to:

snap lines onto vertices
invert line directions

Fixes should generally be done by the data provider, however for speed it is often tempting to do them manually. I'm assuming errors here that are difficult to fully automate. For reproducibility, preferably any modifications are done in code. This is often more work than manual edits however.
What are good ways to track manual fixes to a GeoPackage? If we can somehow capture the SQL statements that QGIS sends to SQLite to update the tables, that would be a good option. I don't see such an option in QGIS however.

Perhaps we can create triggers that log certain changes to a logging table in the GeoPackage.
QGIS/SQLite uses Write-Ahead Logging (file extension .gpkg-wal) to store all the edits. Only when the connection is closed, are these changes committed to the original .gpkg. Perhaps we can use these in some way.

I just found this while writing this issue, but SQLite also distributes sqldiff.exe: Database Difference Utility. I tried the output after reversing a single edge, and it shows like this:
❯ c:\bin\sqlite\sqldiff.exe basic.gpkg basic-v2.gpkg
UPDATE Edge SET geom=x'4750000340710000000000000000184000000000000018400000000000000000000000000000f03f0102000000020000000000000000001840000000000000f03f00000000000018400000000000000000' WHERE fid=17;
UPDATE gpkg_contents SET last_change='2023-09-21T13:52:07.160Z', min_x=5.04870979341447e-19 WHERE rowid=2;

sqldiff can be downloaded from https://www.sqlite.org/download.html.

Two more functions:

Validate (and) correct wrong geometry-types (!= LineStrings, mostly MultiLinestrings)
Add a new LineString between 2 nodes
Split a LineString (adding a node)

Can conversion from MultiLineString to LineString not be automated?
And regarding adding a new LineString between 2 nodes, what do you expect besides the default tools that QGIS offers?
For splitting a LineString to put a node in between, are you thinking about editing Ribasim networks here? I agree that would be useful. Perhaps for the QGIS plugin.
For reference, Ribasim 7 allows you to select a node and edge type, and then supports the following operations. Split connection is there as well.

auto-conversion; yes it can, but for HydroObjects you want to feedback to the Water Authority which feature-types you've converted otherwise you'll receive the same wrong-types again
functionality; yes I was having Netter (Ribasim7/Sobek2 interface) in the back of my mind. I think you do want to split HydroObjects adding a node and force the user to draw a new HydroObject between two nodes . That is what I had to do for adding this HydroObject as a link between two nodes:

linked issue #11. Similar functionality, but on HyDAMO-class in stead via QGIS Plugin.


V8 plugin metadata

Updated plugins to adopt new JsPsych standard for parameters with the version and data fields, while updating comments and links within plugins to phase out documentation and update JsDoc. Worked with Professor de Leeuw on implementing Psych-DS and decided on this prototype as the final version. By including the version with the plugin, we allow the versions of each plugin to be included with the final data. This allows the metadata module to scrape and call the API correctly. The "data" field allows the metadata module to scrape descriptions of the output and describe the variables.
Due to the updates to the PluginInfo interface with the "version" and "data" fields, this breaks all previous versions of plugins to be incompatible with v8. To fix these issues adjusted test cases to include these fields. Will need to update tests and can use these to finalize testing of the metadata module.
List of changes to all JsPsych plugins

Added version numbers
Added data field describing the data generated with type and description in jsDoc
Updated links with "/latest"
Updated parameters comments to be the same as included in the documentation files (efforts to standardize descriptions)
Updated descriptions of plugins to reflect the current documentation

We might also want to think about how extensions could work in this scheme.
Currently their info property is just a name:
https://github.com/jspsych/jsPsych/blob/c6a5691c066097922a4911b74706b12f81a83847/packages/extension-webgazer/src/index.ts#L43-L45
Adding version and data to this seems like it would be useful. Then when they write data they can write the extension_version as well?

@Bankminer78 looks like the extension manager tests need to be updated with new data

Make final updates to documentation within developer docs to reflect the new standard requiring the version and data parameters as part of const.