Dropping hackney dependency

We need Hackney to make sure that tzdata we're downloading and unpacking has not been tampered with. However, hackney brings many transient dependencies and for that reason I believe it is not the best choice, it would be great to depend on as least deps as possible.
I think we have two options:
Option 1: httpc + castore. EEF Security WG has a nice guide how to give httpc secure settings. I think this will be pretty simple to implement and already be a big improvement.
Option 2: httpc + manually checking tzdata signature.
This would be similar to how mix local.hex works, it fetches https://repo.hex.pm/installs/hex-1.x.csv and https://repo.hex.pm/installs/hex-1.x.csv.signed and checks if it wasn't tampered with against Hex public key that is included in Elixir.
Turns out tzdata releases are signed with GPG using Paul Eggert's public key. If we include the key in tzdata and verify against that, we wouldn't even need castore which I think would be a small win.
I have a proof of concept:
defmodule Main do
  def main do
    url = "https://data.iana.org/time-zones/releases/tzdata2021a.tar.gz"
    tzdata = curl(url)
    tzdata_asc = curl(url <> ".asc")
    {public_key_string, 0} = System.cmd("gpg", ~w(--export -a eggert@cs.ucla.edu))

    # https://erlang.org/pipermail/erlang-questions/2021-July/101220.html
    [public_key] =
      :public_key.pem_decode(
        IO.iodata_to_binary([
          "-----BEGIN RSA PUBLIC KEY-----\n",
          public_key_string |> String.split("\n", trim: true) |> Enum.drop(1) |> Enum.drop(-2),
          "\n-----END RSA PUBLIC KEY-----"
        ])
      )

    IO.inspect(
      [
        tzdata: tzdata,
        tzdata_asc: tzdata_asc,
        public_key: public_key_string,
        public_key: public_key
      ],
      printable_limit: 100
    )
  end

  defp curl(url) do
    {out, 0} = System.cmd("curl", ["--fail", "--silent", url])
    out
  end
end

Main.main()

[
  tzdata: <<31, 139, 8, 0, 0, 0, 0, 0, 2, 3, 236, 125, 91, 119, 35, 71, 146,
    158, 94, 89, 191, 34, 23, 173, 53, 200, 49, 10, 4, 192, 59, 91, 212, 12, 72,
    130, 108, 170, 121, 51, 1, 170, 165, 30, 141, 225, 2, 144, 0, ...>>,
  tzdata_asc: "-----BEGIN PGP SIGNATURE-----\n\niQIzBAABCgAdFiEEfjeSqdis99YzvBWI7ZfpDmKqfjQFAmANxdIACgkQ7ZfpDmKq\nfjTn" <> ...,
  public_key: "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBEyAcmQBEADAAyH2xoTu7ppG5D3a8FMZEon74dCvc4+q1XA2J2tBy2pwaT" <> ...,
  public_key: {:RSAPublicKey,
   <<153, 2, 13, 4, 76, 128, 114, 100, 1, 16, 0, 192, 3, 33, 246, 198, 132, 238,
     238, 154, 70, 228, 61, 218, 240, 83, 25, 18, 137, 251, 225, 208, 175, 115,
     143, 170, 213, 112, 54, 39, 107, 65, 203, 106, ...>>, :not_encrypted}
]

the next step is to use :public_key.verify/4 but not sure how to transform the arguments appropriately so it accepts them.
Maybe @voltone could help with that :)

Is this going to become a problem with Root CA file expiring at the end of the month since we can't pass hackney options down?

Is this going to become a problem with Root CA file expiring at the end of the month since we can't pass hackney options down?

Should not be an issue, for two reasons:

Since no ssl options are being passed to Hackney, it will use its defaults which (at least with recent Hackney versions) will verify the server cert correctly before and after the DST Root CA cert expires
The server that Tzdata connects to does not use a Let's Encrypt certificate, so OTP's ssl should have no problem connecting to it in any case, regardless of OTP version or the client used

As you approach this issue, please also consider corporate environments in which TLS interception is active, as described in hexpm/hex#727. Something analogous to HEX_CACERTS_PATH for injecting an additional valid certificates would be helpful. 🙂

Also keep in mind that since OTP 25 there is support for native OS CA certificates that httpc can use and don't need the extra dependency


Doesn't work at all

Steps to reproduce:

Run npx create-react-app my-app --template typescript to create a new project.
It contains a test "renders learn react link", which appears in the test explorer.
But clicking on it doesn't run anything. It stays in a state of "running the test" but there's no output or anything happening.

I followed your steps testing on two different machines windows 10/11
can you give me some more infos please.

What OS are you using
node/npm version
version of cra

OS: Windows 11
Node: 16.3.1
NPM: 8.3.1
CRA: 5.0.0 (since I run CRA using npx, it's supposed to be the latest version)
VS Code: 1.63.2
React-scripts Test Adapter: 0.1.0
I'm using native test UI, although switching to Test Explorer UI doesn't solve the problem either.

OK this will probably help. I open the deveolper mode of VS Code, and as I click on run, it shows the following error in the console:
[Extension Host] rejected promise not handled within 1 second: TypeError: e is not iterable
[Extension Host] stack trace: TypeError: e is not iterable
    at e.default.getTestIds (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:5710)
    at e.default.buildRunnerInfo (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:5520)
    at e.default.parseNodesToRunnerInfo (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:3270)
    at e.default.<anonymous> (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:2875)
    at Generator.next (<anonymous>)
    at c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:10337
    at new Promise (<anonymous>)
    at Module.l (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:10082)
    at e.default.runTests (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:2790)
    at e.ReactScriptsAdapter.<anonymous> (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:7361)
    at Generator.next (<anonymous>)
    at c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:10337
    at new Promise (<anonymous>)
    at Module.l (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:10082)
    at e.ReactScriptsAdapter.run (c:\Users\Donald\.vscode\extensions\smarschollek.vscode-react-scripts-test-adapter-0.1.0\dist\main.js:2:7172)
    at TestAdapterDelegate.run (c:\Users\Donald\.vscode\extensions\hbenl.vscode-test-explorer-2.21.1\out\hub\testAdapterDelegate.js:38:29)
    at b.run (c:\Users\Donald\.vscode\extensions\ms-vscode.test-adapter-converter-0.1.5\out\extension.js:1:3551)
    at l.runHandler (c:\Users\Donald\.vscode\extensions\ms-vscode.test-adapter-converter-0.1.5\out\extension.js:2:490)
    at g.$runControllerTests (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:96:53523)
    at t._doInvokeHandler (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:99:13802)
    at t._invokeHandler (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:99:13486)
    at t._receiveRequest (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:99:12097)
    at t._receiveOneMessage (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:99:10826)
    at c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:99:8922
    at u.fire (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:66:1712)
    at r.fire (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:18942)
    at c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:114:34341
    at u.fire (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:66:1712)
    at r.fire (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:18942)
    at n._receiveMessage (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:23523)
    at c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:21057
    at u.fire (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:66:1712)
    at w.acceptChunk (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:15770)
    at c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:74:14900
    at Socket.T (c:\Users\Donald\AppData\Local\Programs\Microsoft VS Code\resources\app\out\vs\workbench\services\extensions\node\extensionHostProcess.js:114:13813)
    at Socket.emit (events.js:315:20)
    at addChunk (internal/streams/readable.js:309:12)
    at readableAddChunk (internal/streams/readable.js:284:9)
    at Socket.Readable.push (internal/streams/readable.js:223:10)
    at Pipe.onStreamRead (internal/stream_base_commons.js:188:23)

I tried adding the following line after line 230 of your TestManager.ts:
if(!nodes) return result

And then everything works. Not sure if this is the preferred way to fix it though. I'll let you figure it out.

Thanks for your effort. I will try to take a look into the problem today or tomorrow.

Hey MuTsunTsai,
Sorry for keept you waiting, i just uploaded a new version. It looks like i just had to update the dependencies.
Hope that fixes all your issues. If you can give me a quick feedback so i can close the issue

Confirmed issue fixed. Thanks.


Charm of Undying fails when killed by Sacrificial Dagger [Blood Magic]

I'm sure this is on Blood Magic's end, but it seems to be an ongoing issue so perhaps there's something that could be done on this side to correct it?
Dying by use of the Sacrificial Dagger[Blood Magic] while holding a Charm of Undying[Thaumcraft] causes the player to be killed, and also consumes the Charm of Undying. A tombstone is not left for this death causing the player's inventory to be deleted.
Steps to Reproduce
Use the dagger until death while holding Charm of Undying.
Log
https://hastebin.com/bapoqezugu.sql
Mod Versions
Modpack: ATM3 - Remix 1.0.0
Minecraft: 1.12.2
Forge: <IP_ADDRESS>68
Blood Magic: 2.3.3-101
Thaumcraft: 6.1.BETA26
Corail Tombstone: 3.2.6

how does that work with a regular totem instead of a charm?

I would recommend using a cloud->healing focus... it is extremely effective for blood magic

Assuming you mean the vanilla Totem of Undying, nothing happens when you die with it in your inventory, it doesn't activate. The problem with the Charm is that it does try to activate so you technically are revived, but then an event from Bloodmagic kills you right after that.


[Automation] Generate Fluent Lite from consumption#package-2019-10

[Automation] Generate Fluent Lite from consumption#package-2019-10

/azp run prepare-pipelines

/azp run java - consumption - ci


SUP-2622 4xx codes for nonexistent, non-destructively deleted and not permitted docs

4xx codes for nonexistent, non-destructively deleted and not permitted docs

created incorrectly

Nice 👍


[FEATURE] Redesign footer section

Description
Can i work on the footer section of the website and make new UI changes.
Screenshots
No response
Additional information
No response

@ZapeeoSheikh please assign me this issue


Fix options.isIncremental syntax

Fixes a typo in JavaCompile task .isIncremental option.
Context
It's just a typo fix :)
Gradle Core Team Checklist

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation

@bot-gradle test and merge

No milestone for this PR. Please set a milestone and retry.

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

I've triggered a build for you.


Current Confirmed Balance not updating.

#200  Description
When attempting to make a payment from Lightning wallet, the confirmed on-chain balance does not update. The value reported here is static from whenever Zap was started.
Expected Behavior
Pay Screen: 'Your currrent balance' (onchain) value should update dynamically.
Actual Behavior
Pay Screen: 'Your currrent balance' (onchain) value is read on Zap startup and not updated.
Possible Fix
Zap not fetching lncli walletbalance periodically?
Steps to Reproduce

Connect Zap to lnd wallet. Verify onchain wallet balance matches in Zap main screen, and on Pay (send bitcoin) screen, and in command line lncli walletbalance (confirmed balance).

Send or Receive btc to Zap connected lnd wallet and do not close Zap. Once transaction is confirmed (check via command line), check ''Your currrent balance' (onchain) value at the bottom of Pay screen (send bitcoin). This value does not update dynamically.

Restart Zap and current onchain balance is updated to correct value.

Context
Was trying to send funds and getting error (not enough confirmed funds).
Your Environment

Zap version: 0.7.2 beta
Operating System and version: Ubuntu 20.04.1 LTS

I have exact same issue but with built in lnd and neutrino. Sometimes it works but most of time it does not and usually have to hit log out and log in every hour or so to refresh channel states and wallet balances.

Some updates were made to the balance handling in next branch and I've verified this behaviour to be working as expected. Will be included in next release


.socpak files

Hi Peter,
Have you got any idea about how to extract information from .socpak files? I think for larger spaceships they split some of the interior into their own object containers. I'm guessing SOCPAK = Streaming Object Container PAK.
Specifically, I would love to be able to explore the contents of these Carrack related files because I think some of the loadout information is in there.
Data\ObjectContainers\Ships\ANVL\Carrack\front.socpak
Data\ObjectContainers\Ships\ANVL\Carrack\middle.socpak
Data\ObjectContainers\Ships\ANVL\Carrack\rear.socpak

As a follow-up, if I use the GUI to open the .socpak, then it can show me the contents, but if I try and extract a file, it crashes.
Trying to extract by hand gives this:
unp4k.exe front.socpak *.xml
Exception while extracting cubemaps/bridge_lighting/probe_bridge_bottom_cm.dds: Object reference not set to an instance of an object.

... and the the same error for every file in the index.

OK, so the null reference exception is caused by ZipEntry.IsAesCrypted failing because this.ExtraData is null. So I worked around that by just returning false and I've been able to extract the socpak, which is awesome :)
The next challenge is that it creates several .soc files, some of which seem to be CryXmlB (because I can see that word when I look using a hex editor), but then main .soc, which is called front.soc does not seem to be CryXmlB.
Both files start with CrChF, if that means anything?
It looks like front.soc contains what I want, because when I do a strings | grep Bed_Single_Side_ANVL_Carrack_Captain, it shows up in there.
(The whole reason I am going down this track is that I'm trying to add the number of beds to the ship stats in scunpacked, but I couldn't find any beds at all for the Carrack)

Just saw these - a few people have been sniffing around the socpaks lately, and I'm hoping to add more native support soon.
In general: the CrChF files are a CryEngine model format - similar to what is found in cgfconverter - but with some new, unknown node types.
Sounds like you've already discovered that the socpak itself is just a zip file, containing XML, CryXmlB, and Model files.

In fact - https://github.com/Markemp/Cryengine-Converter/commit/315640f486f7181b9223f5ce474e21524d121895
=D

Thanks Peter, that makes a lot of sense. Stuff that can be switched out by the player or that affects ship performance is all listed via their itemport system, but static items like bunk beds, medical scanners and the like are positioned in 3d space within the ship by data in the soc file. Big ships get multiple object containers, small ships get just one.

Will this see anymore development? Since 3.19.1 LIVE, all location object containers have been moved to *.socpak files under Data/ObjectContainers/.

Look into StarFab. It is a UI that uses several programs, including, CGF-Converter as it's model converter. Most of the files are accessible.

Thanks, I already had taken a look, but didn't want to rewrite all my parsers. Guess there's no choice though: the data structure changed.

Look into StarFab. It is a UI that uses several programs, including, CGF-Converter as it's model converter. Most of the files are accessible.

Thanks, I already had taken a look, but didn't want to rewrite all my parsers. Guess there's no choice though: the data structure changed.


Isn't the performance actually built on top of pufferfish?

I mean, i could be wrong but since purpur has patches from pufferfish i thought it would be built on top pufferfish (at least somewhat)

perhaps it should instead be paper & pufferfish?

We aren’t built on top of Pufferfish like we are on Paper, it’s all in the semantics.
It’s the same thing how Pufferfish includes Petal patches yet claims to be built on top of Papaer.


improve coverage of Instance Composer

Description
I deleted test scenarios that was failing due to some issues with how responsive library is in the jest environment, But scenarios deleted are covered by the e2e scenarios
closes #5339
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[x] Attached issue to pull request
[x] Changelog entry
[x] Code is clear and sufficiently documented
[x] Sufficient test cases (reproduces the bug/tests the requested feature)
[x] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )

I'm confused how removing the empty test cases that you prepared are improving the coverage.

Adding test for the standalone functions is improving coverage. I removed the test cases that were faulty, and the ones that are covered by the e2e, as it was discussed some time ago, due to the mentioned issues between jest and jointjs library.

My bad, looks like the diff was too big and I missed it entirely

My bad, looks like the diff was too big and I missed it entirely

No worries :D

Pull request rejected by merge tool. Failed to parse change entry file: Invalid changelog entry file /tmp/tmptenj1l2q/changelogs/unreleased/5443-instance-composer-refactor. Changelog entry files should always end with a .yml extension.

Processing this pull request

Merged into branches master, iso7 in 89409f6095c48d6955390d48a6f0740b5b0d13fc


Question on packages installation

Hi Professor,
I've checked the version of r and rstudio on my macbook, and I'm sure they're same as professors. However, when I tried to install package "startup" , it came out to be "error", and the warning messages said  "unable to access index for repository https://cran.csie.ntu.edu.tw/src/contrib: 無法開啟 URL 'https://cran.csie.ntu.edu.tw/src/contrib/PACKAGES'" and  "package ‘startup’ is not available for this version of R." I've tried to restart Rstudio to install it again, but the result is just the same.

Try Tools > Global Options , then "uncheck" the one I circled.

Thank you, Professor! I’ve solved the problem!


fedora_bot: Make slack notifications optional

Skip slack notifications if $SLACK_WEBHOOK_URL is not set.

In Cockpit and in my own upstream projects we don't use slack, but at some point I'd like to use fedora-bot to auto-land packit PRs.

Absolutely makes sense to make Slack optional!

Rebased to feed it through the shiny new "check" workflow.


NodeJS created_at how to change timezone

I'm using NodeJS local server and I would like to get the date and time of a submission of a page. The problem is I cannot manage to set the timezone to for example Italy, Rome?
  var time = req.body.created_at = new Date().toISOString().replace(/T/, ';').replace(/\..+/, '')+ ';';

Maybe this Stack Overflow question would help.

Closing this due to lack of response.


Ensure our data migrations migrate blocks that are children of other blocks

This PR adds some recursion to our Wagtail StreamField-specific data migration utilities to ensure that when we migrate a particular block type we migrate it whether it's at the top level of our page's stream field or inside another block.
For example, our FullWidthText block itself contains a variety of other blocks that could also exist within a StreamField directly. So if we want to migrate all EmailSignUps, we would previously have had to look inside the FullWidthText separately for its EmailSignUp.
For example, LearnPage contains an email_signup EmailSignUp block in its content StreamField. BlogPage has both a FullWidthText and a EmailSignUp block in its content StreamField. If we wanted to perform the same migration on the EmailSignUp in both places, we'd have to extract the EmailSignUp block from the FullWidthText block first. Perhaps something like:
def full_width_text_mapper(page_or_revision, data):
    email_signup = data['email_signup']
    data['email_signup'] = email_signup_mapper(page_or_revision, email_signup)
    return data

def email_signup_mapper(page_or_revision, data):
    # Mung mung
    return data

def forwards(apps, schema_editor):
    migrate_page_types_and_fields(
        apps,
        [(v1', 'BlogPage', 'header', 'email_signup'),],
        full_width_text_mapper
    )
    migrate_page_types_and_fields(
        apps,
        [(v1', 'BlogPage', 'content', 'full_width_text'),],
        full_width_text_mapper
    )

With this change, we just have to write one mapper function and have one call to migrate_page_types_and_fields:
def email_signup_mapper(page_or_revision, data):
    # Mung mung
    return data

def forwards(apps, schema_editor):
    migrate_page_types_and_fields(
        apps,
        [('v1', 'BlogPage', 'content', 'email_signup'),],
        full_width_text_mapper
    )

Notes
@chosak I'd like to get your eyes on this, particular on an assumption that looking for a dict withtype within a sequence inside the value of a block is sufficient to look at all child blocks.
The other thing is this doesn't necessarily make it easy-peasy-lemon-squeezy for all block types. We're not always consistent in the way we name them within their StreamFields (heading is a HeadingBlock on FullWidthText but it's a CharBlock on ExpandableGroup, for example). But where we are consistent with the way block types are named, this should help.
Checklist

[x] PR has an informative and human-readable title
[x] Changes are limited to a single goal (no scope creep)
[x] Code can be automatically merged (no conflicts)
[x] Code follows the standards laid out in the CFPB development guidelines
[x] Passes all existing automated tests
[x] Any change in functionality is tested
[x] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged / future todos are captured in comments
[ ] Visually tested in supported browsers and devices (see checklist below :point_down:)
[ ] Project documentation has been updated
[x] Reviewers requested with the Reviewers tool :arrow_right:

I have concerns about using the terms type and block_type here, when these things are really more appropriately the name of the block, which can vary based on the context.
For most of our atomic elements we tend to usually make the block name similar to the block type when defined at the StreamField top level (e.g. 'text_introduction' for TextIntroduction), but not always (e.g. 'contact' for MainContactInfo). Once we get into sub-blocks, the names are more often different than the type.
We could potentially encourage/enforce a standard way of naming blocks and sub-blocks, but my instinct is that it'd be overly restrictive (and would need to be documented).
If we want to go with the direction proposed in this PR, could we be more clear that we are referring to the name or key of the block, not the type? And recognize the caveat that there might be places where the names conflict or differ?
Another approach that @Scotchester and I have discussed offline would be to define the signature of inputs to migrate more explicitly, e.g. page_types_and_fields would become a tuple of (app, model, field, path to block), where the last element can have between 1 and N levels:
page_types_and_fields = [
    ('v1', 'BlogPage', 'content', ('email_signup',)),
    ('v1', 'BlogPage', 'content', ('full_width_text', 'email_signup',)),
]

In this case the migrate function would use those path elements to determine which blocks to migrate.

Are these changes backwards compatible with any existing data migrations that exist and might be using the migrate_page_types_and_fields function?

Another approach that @Scotchester and I have discussed offline would be to define the signature of inputs to migrate more explicitly, e.g. page_types_and_fields would become a tuple of (app, model, field, path to block), where the last element can have between 1 and N levels:

Ooooh. I do like how explicit that is a lot better. It would still require two lines for the Blog Page email signup block though — which is the change that inspired this. @Scotchester any opinions?

Are these changes backwards compatible with any existing data migrations that exist and might be using the migrate_page_types_and_fields function?

Yes, these changes are backwards-compatible to the extent I've been able to determine (the tests for those migrations pass) — and we're not interested in going backwards anymore, so theoretically any data migrations that have run on production before this gets deployed will never have to run again.

heoretically any data migrations that have run on production before this gets deployed will never have to run again

This is true for existing cf.gov environments, and for local environments that bootstrap using a production dump, but those old migrations still get run on a new database (./initial-data.sh) and as part of the full tox tests. So the code in those data migrations still needs to be able to at least run without exception.

Another approach that @Scotchester and I have discussed offline would be to define the signature of inputs to migrate more explicitly, e.g. page_types_and_fields would become a tuple of (app, model, field, path to block), where the last element can have between 1 and N levels:

Ooooh. I do like how explicit that is a lot better. It would still require two lines for the Blog Page email signup block though — which is the change that inspired this. @Scotchester any opinions?

I don't mind the added line if it makes the method signature more explicitly clear.

Ok, I will update this PR to use the explicit path instead. I like that there's less magic in that.

@Scotchester @chosak alrighty, I think I've got the path-based block names working. I've also confirmed this doesn't break the existing migrations on a blank/initial-data database.

I have concerns about using the terms type and block_type here, when these things are really more appropriately the name of the block, which can vary based on the context.

I've also tried to replace all references to "block type" with "block name".

@Scotchester and I found a bug where subsequent attempts at recursion would make earlier migrated = True values get overridden, resulting in migrated fields not being ultimately written back to the page. I've fixed that in the latest commit.


Objects are not moved to new package after switching branches

Same scenario as in #1482
If I install the test repo branch master and pull. Then switch to branch new_package where the class is moved to a subpackage, it's not possible to pull respectively pull does nothing. The class isn't moved to the subpackage and still a diff is shown.

Expected behaviour: class is moved to subpackage.

some previous work by @EduardoCopat, see https://github.com/larshp/abapGit/pull/1007

Seems that #1482 fixed this too. Although it's still not possible to pull after switching branches 'reset local' does the job. That's ok for me. I'll close.

Thought this one is fixed, but it seems not.
Test case https://gitlab.com/christianguenter/test_package.git

Clone master
Switch to branch subpackage
neither pull nor reset local moves the class in the subpackage

I can reproduce it. However, the subpackage branch is not consistent and contains the class ZCL_Z_TEST_PACKAGE class twice. I suspect that's why abapGit can't properly assign the class to the sub-package. We should test again, after you remove the class from the main package (branch subpackage/src).

After removing the files from main package everything works as expected. Closing.


Auto updating instance for 1.20.4 version

Describe the bug
It's not possible to have an auto updating instance as packwiz expects the hashes to be present and the https://github.com/skywardmc/additive/commit/6321f3f7c00612ae43670c1d565e484b4db99f67 commit removed them.
One possible solution would be to host a version of the pack generated with packwiz refresh --build somewhere.
To Reproduce
Steps to reproduce the behavior:

Follow this guide provided by packwiz to setup an instance which automatically updates. For the url use https://raw.githubusercontent.com/skywardmc/additive/main/versions/fabric/1.20.4/pack.toml
Press launch.
Wait a bit.
See error.

Expected behavior
I would expect to see packwiz download the mods.
Screenshots

Device info (please complete the following information):

OS: Nobara Linux
Minecraft version: 1.20.4

This should now be fixed. Let me know if you run into anymore issues


fix: fix blob verification output with sharded rekor tlogs

Signed-off-by: Asra Ali<EMAIL_ADDRESS>
Summary

See https://github.com/sigstore/sigstore-python/issues/184#issuecomment-1213563031
When verifying blobs that were placed on sharded rekor instances (staging), the blob verification outputs the local log-index.
For e.g.
$ SIGSTORE_REKOR_PUBLIC_KEY=rekor.staging.pub COSIGN_EXPERIMENTAL=1 ./cosign verify-blob --signature python.sig --cert python-cert.pem --rekor-url https://rekor.sigstage.dev python-readme.md
used alt pubkey
tlog entry verified with uuid: 3b5007afc2bb375d4078ad93e72537c9c3e8e1a21556d716cac7ee06b544950c index: 71
Verified OK

This corresponds to log index 532.
$ ./rekor get --uuid 3b5007afc2bb375d4078ad93e72537c9c3e8e1a21556d716cac7ee06b544950c --rekor_server https://rekor.sigstage.dev --format json | jq -r '.LogIndex'
532

This is because InclusionProof returns the "local" log index.
Release Note

Documentation

Codecov Report

Merging #2157 (15f4d30) into main (7d80bc0) will not change coverage.
The diff coverage is 0.00%.

@@           Coverage Diff           @@
##             main    #2157   +/-   ##
=======================================
  Coverage   26.23%   26.23%
=======================================
  Files         130      130
  Lines        7617     7617
=======================================
  Hits         1998     1998
  Misses       5362     5362
  Partials      257      257

Impacted Files
Coverage Δ

cmd/cosign/cli/verify/verify_blob.go
9.72% <0.00%> (ø)

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Support multiple timezones for single point

Release 2018f of source data introduces a situation where a single point can be contained by multiple geometries (see https://github.com/evansiroky/timezone-boundary-builder/issues/41). The API of Timeshape must be adjusted to support this.

The new library TimeZoneMap supports this by adding a new method that returns a list. I opted not to use a QuadTree for searching the time zone regions, as I found it not all that much faster than simple looping through the regions.

There is any plan for making regular releases that just update to the latest OSM data versus releases with enhancemnts?

I've been really busy with my life recently, and this busy period is still ongoing, so that I can't really promise any concrete date for future releases. But maybe you can step in and send a pull request which updates to the latest version of OSM data? I'll prepare a release then.

Closing this, because release 2019b.7, which has just been published, has support for querying multiple time zones for single geo point.


Hints on using the Kimera-VIO front end?

Hi,
we want to do some research on accelerating factor graph optimization for SLAM, and are interested to see if we can use the front end in Kimera-VIO to extract features. I tried to look through some of the code, but it's not obvious to me how I could do this in a good way.
I see that GTSAM is used by both the front end and back end, so I guess that the front end creates GTSAM factors and hands them to the back end? Let's say that I want to run Kimera-VIO on an existing data set and export the GTSAM factors as they are delivered by the front end. Where do you think would be a good place in the code where I could try to add this kind of functionality?
Also, I know that there are some python bindings for Kimera but I haven't been able to figure out what they do or how to use them. Is something like this already exposed through the python bindings so that I can play around with it?
Thanks, Toivo

This is a bit late but the frontend creates measurements (gtsam::StereoPoint) that are then converted to factors in the backend. If you want to capture the factors before they are added to the graph, this would all be done in the backend. Take a look at the large function VioBackend::addVisualInertialStateAndOptimize which includes the factor construction and adds the factors, before calling the optimizer. Gtsam has some functionality built in to save factor graphs to file, should only need to add a line or two.


Revoking public schema access not working as expected

Like this issue on terraform when you create a schema and explicitly set a SchemaPolicy for PUBLIC role it's ignored and PUBLIC role has Create and Usage permissions
Example code
pulumi_postgresql.Schema("schema",
        name="public",
        database=db.name,
        owner=role.name,
        policies=[
            # PUBLIC role
            pgsql.outputs.SchemaPolicy(
                create=False,
                usage=False,
            )
        ],
        opts=default_resource_opt
    )

Thanks for pointing this out and linking to the underlying TF issue. We'll keep this open to track on our side.


More integration tests

JIRA Ticket: https://jira.lyrasis.org/browse/FCREPO-3223
What does this Pull Request do?
Another iteration on re-enabling integration tests.
How should this be tested?
Ensure the changes made to the tests (or application) are correct.
In this exciting episode:

When adding a blank node to a resource's graph, we no longer allow you to directly access the blank node as a URI (I was not aware you could ever do that). Instead we just check that the blank node is part of the resource's graph.
We ensure that GET -> PUT interactions omit server managed triples.
We change the expectations for binary and binary description ETags. They used to be separate and so changing one would not affect the other. They now a linked together.

Interested parties
Tag (@ mention) interested parties or, if unsure, @fcrepo/committers

Somewhat related but I (and @pwinckles ) have experienced test failures due to 1 second differences in the FedoraVersioningIT. I have made a change to allow a small variance in the Memento URIs. I hope this is ok.


[SPARK-39034][SQL][TESTS][DOCS] Add tests for options from to_json and from_json.

What changes were proposed in this pull request?
This PR proposes to fill up the missing test for options from JSON read/write functions.
This PR also includes some typo fixing of docs.
Why are the changes needed?
For better testability and correct the documents.
Does this PR introduce any user-facing change?
Some typo is fixed from documents.
Test-wise, it's dev-only.
How was this patch tested?
Added some UTs for JSON read/write options.

Merged to master.


Add storage feb21

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[x] new API version

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[x] SDK of .NET (need service team to ensure code readiness)
[x] SDK of Python
[x] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[x] PowerShell
[x] CLI

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[x] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[x] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[x] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[x] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.
(https://dev.azure.com/msazure/AzureWiki/_wiki/wikis/AzureWiki.wiki/37683/Retirement-of-Previews))
Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

Please also change readme.python.md as
https://github.com/Azure/azure-rest-api-specs/pull/13034/files

Please also change readme.python.md as
https://github.com/Azure/azure-rest-api-specs/pull/13034/files. I did in commit c0c5fcd.

Thanks Zunli
Updated Java&CSharp Readme as well

Hi @hyhdtc, Your PR has some issues. Please fix the CI sequentially by following the order of Avocado, semantic validation, model validation, breaking change, lintDiff.
Task	How to fix	Priority	Support (Microsoft alias)
Avocado	Fix-Avocado	High	ruowan
Semantic validation	Fix-SemanticValidation-Error	High	raychen, jianyxi
Model validation	Fix-ModelValidation-Error	High	raychen,jianyxi
LintDiff	Fix-LintDiff	high	jianyxi, ruoxuan
If you need further help, please feedback via swagger feedback."

Already fixed

Before merge, we have to make sure that 2021-02-01 api version is already deployed to all regions in public clouds and government clouds and e2e test scenarios could work as expected.
I have such concern because we get an issue https://github.com/Azure/azure-cli/issues/17189 for US gov cloud and China cloud with api version 2021-01-01.

Before merge, we have to make sure that 2021-02-01 api version is already deployed to all regions in public clouds and government clouds and e2e test scenarios could work as expected.
I have such concern because we get an issue Azure/azure-cli#17189 for US gov cloud and China cloud with api version 2021-01-01.

Thanks Zunli. I can confirm that the api-version is already deployed to all regions in public and all national cloud.


Admin actions

Requires #1590
Adds the admin approvals buttons to the interface. Can now change the visibility of all the artifacts individually. Also adds the submit to EBI and VAMPS buttons when applicable.

@squirrelo which should we review next, this one or https://github.com/biocore/qiita/pull/1602 ? Thanks!

This one.

Thanks, please let us know when should we proceed.

ready for review.

Merge issues taken care of, so missing tests and docstrings should be in place now.

A few more comments.

done with the review.

Comments addressed

Few comments

@squirrelo ETA on addressing the comments here?

All comments have been addressed

Still some unresolved comments here.


Add support for Laravel 7

Hi @chris-ware
Thanks so much for your help.
You can now use this package in your Laravel 7.x projects using the version 3.0.0.


Review Feedback

value::storage() should say: Return a reference to the storage_ptr to the
memory_resource associated with the value.  The same thing applies to a few
other classes.
The reference for the initializer_list constructor could use some improvements:
e.g. "Construct an object or array from an initializer_list".  I find this
hugely important since just the mere presence of an initializer_list
constructor changes the meaning of brace initialization.
Additionally, I doesn't mention how nested initializer_list how are treated.
Most importantly it should show or link to some examples on how the
initializer_list are converted to objects, arrays, and non structured
values because some developers (if not most) might not immediately realize
from just looking at the reference documentation how nested
initializer_list are parsed.  Maybe also reference to the
initializer_list constructors of array and object.
object::insert is not well-documented.  I did not understand what it does
when I insert an already existing key, in particular, whether assignment
takes place or not.  The same is true for object::emplace.
The object initializer constructor is listed under "Copy constructor".
The object::erase return value documentation is wrong.
object::reserve says "This inserts an element into the container."
object::swap(object) and the friend version swap(object,object) have
rather inconsistent briefs.
The initializer_list constructor for array is listed under move constructors.
The pilfer constructors are not quite explained.  There's a reference to the
paper, but I think the library should have a page that concisely explains what
it does and what a user of the library can expect from pilfered objects.  In
particular, how the thing differs from move and why a user would ever want to
use it instead of move.  Also the reference pages for pilfer and so on don't
explain what it does.
array::reserve shows BOOST_FORCEINLINE in the docs.
value_to is unclear about the precedence of the three listed options
(constructor, library provided conversion or tag_invoke) if multiple are
present provided this is actually possible.  The same is true for value_from.
storage_ptr thread safety is not documented.  That's a real bummer for a
shared_ptr-like construct.
I found it rather difficult to figure out the difference in the behavior of
parser::write and parser::write_some just from reading the documentation.
Either reference documentation should clearly state what the difference is.
I had to open both pages side by side to actually spot the wording
difference.  For example, I think that the documentation of write_some
should clearly state that it's intended use case is for parsing multiple JSON
values from a byte stream presented through one or more buffers whereas
write is intended for parsing one JSON value from one or more buffers.  At
least that's what I concluded from the documentation after some time.
The parser documentation should either link to or inline provide one or
more examples how the parser is supposed to be used.  In particular
write_some would benefit hugely from an example that shows how to properly
extract a stream of JSON values from a sequence of buffers.
If I read the documentation correctly, basic_parser::write behave more like
parser::write_some than parser::write.  I would prefer the call it
basic_parser::write_some.
The basic_parser reference documentation would benefit from either a link
to an example or an inline example.

These have been broken out into individual issues


bazel: fix git SHA embedding

Previously, the SHA generation genrule used a glob over .git/**
to figure out if anything changed. This does not work when envoy is
embedded in another git repo as a submodule, or is potentially built
from a tarball. This commit reworks the generation to expect an env
var called GIT_BUILD_SHA which will be used as the final SHA in the
build. CI has been updated to use the GIT SHA being built from.
If the env var is not defined, the SHA is set to a default SHA.
This commit also removes a dependency on version_lib from test main,
which was causing all tests to be relinked for no reason.

@htuch I will add some docs tomorrow, but I wanted to get a pass on this. I'm not thrilled with this, but AFAICT it's the only way of doing this, since I don't think a genrule can be forced to run when an env var changes like a repository_rule can.
Also, it spits out this warning when I run the build:
WARNING: /home/mklein/.cache/bazel/_bazel_mklein/e891e82b12efccc4683c22d6a02939c1/external/envoy/source/version_generated/BUILD:9:1: in srcs attribute of cc_library rule @envoy//source/version_generated:version_generated: please do not import '@git_version//:version_generated.cc' directly. You should either move the file to this package or depend on an appropriate rule there. Since this rule was created by the macro 'envoy_cc_library', the error might have been caused by the macro implementation in /home/mklein/.cache/bazel/_bazel_mklein/e891e82b12efccc4683c22d6a02939c1/external/envoy/bazel/envoy_build_system.bzl:74:16.

If we care about this, I have no idea how to fix it.
Anyway, I think this solution should work for your internal build also. LMK if there is a way to make this better.

Adding a reference to https://github.com/bazelbuild/bazel/issues/216 and https://github.com/lyft/envoy/issues/415 for posterity.

Closing in favor of a different solution.


Add cargo fmt to travis build config

@Atul9 Thanks for this PR! It seems this breaks CI on cargo fmt -- could you also run cargo fmt over the codebase so that CI is green? Thanks!

Hi @yoshuawuyts should I open a new PR for the code changes from running cargo fmt? OR include those changes in this PR?

@Atul9 feel  free to include those here!

@yoshuawuyts done, I have updated the PR & the build has passed.


Android 12 and 13, it's showing a white screen before the actual splash screen appears.

I solved this issue myself.

I solved this issue myself.

I solved this issue myself.


How do you hide a forked repo?

In README.md, it says to set it to private but you can't do that with forks via the Github UI. Must I do it via Git CMD or Bash?

how do you run this?


Resolve percentage rounding issue

Resolves #226

have no idea why CI checks failed (seems it's not related to the fix itself)

Appveyor breaks itself on a regular basis unfortunately, no need to worry about it :)
At least Travis doesn't have any issues so I'm not worried: https://travis-ci.org/github/WoLpH/python-progressbar/builds/677184760
Anyhow, good fix. This fixes the integer truncation nicely. Thank you!

I've created a new release


ALVR launches Rift, cant detect Quest

So everything is connected on the ALVR side, sees the quest. When i start the server all it does is launch my oculus rift and detects that in steam vr but the alvr server never moves to 'alive' and the quest isnt doing anything. Anyone have an idea whats causing this? We tried it at my friends and it all worked fine, his connected rift didnt launch, but for some reason mine does.. driving me nuts trying to figure out what it is.

Rift has higher driver priority in SteamVR. Just disconnect your Rift from USB.

Rift has higher driver priority in SteamVR. Just disconnect your Rift from USB.

Thanks for the fast response. Ok did that and now Steam VR says headset not detected. Again, ALVR is connected and working just not talking to steam..

reinstalled the driver, its working. thanks again

Thanks from me to, but to unplug the Rift is not an easy thing to me, because the backside of my pc is very uncomfortable to reach.
Is there another way? On the device manager i find only the rift sensors, but not the headset to deactivate. any software solution would be very appreciated.

You can disable the service so the oculus software doesn't run.  Open CMD with elevated privileges and type - "net start ovrservice"
To restart the service, you can either reboot or type - "net start ovrservice" in the elevated cmd prompt

That works!
Thank you very much. 8D
BTW: net stop ovrservice to stop, but this was solveable by myself, lol

oops.. lol, Not sure why I messed that up, but yeah, seemed pretty easy to figure it out.
Glad it worked


[SPARK-39979][SQL][FOLLOW-UP] Support large variable types in pandas UDF, createDataFrame and toPandas with Arrow

What changes were proposed in this pull request?
This PR is a followup of https://github.com/apache/spark/pull/39572 that implements to use large variable types within PySpark everywhere.
https://github.com/apache/spark/pull/39572 implemented the core logic but it only supports large variable types in the bold cases below:

mapInArrow: JVM -> Python -> JVM
Pandas UDF/Function API: JVM -> Python -> JVM
createDataFrame with Arrow: Python -> JVM
toPandas with Arrow: JVM -> Python

This PR completes them all.
Why are the changes needed?
To consistently support the large variable types.
Does this PR introduce any user-facing change?
spark.sql.execution.arrow.useLargeVarTypes is not released out yet so it doesn't affect any end users.
How was this patch tested?
Existing tests with spark.sql.execution.arrow.useLargeVarTypes enabled.

Yeah I was trying to understand all the possible flows and definitely knew it wasn't covering the Python originated ones. It looked like all the things originating from the JVM detected the schema from the arrow data coming back. But you're right about the Pandas UDF one, it's the special one that does the pandas to arrow conversion based on the python to_arrow_type. Thanks for the follow up here, it's definitely useful to have it for all those cases as well.
Sorta unrelated but curious if you think this should ever be enabled by default, since most of the rest of Spark tries to avoid 2GiB limits in any places?

I actually personally would like to enable this by default ... but one concern is that people who rely on the regular strings instead of large variable types .... so not sure ..

I wonder what downstream affects there could be? I would think it would be mostly transparent, the main thing I guess would be if downstream consumers of arrow (things like polars?) support the large variable width types.

Yeah, that's the same thought from me. It'd be a matter if you use Arrow batches directly, otherwise, I don't think it much matters.

Okay, I think this is blocked by https://github.com/apache/arrow/issues/35289. NumPy <> Arrow large variable types are not implemented.

Let me drop this Pr, and make spark.sql.execution.arrow.useLargeVarTypes configuration as an internal one for now since this feature is not complete.

Any reason not to keep going with this PR and just leave disabled by default?
Also what exactly are the cases where that numpy limitation could cause a problem? Does createDataFrame with arrow accept numpy arrays that get converted for you?

There are test failures in https://github.com/HyukjinKwon/spark/runs/14214694569. Basically there's no implementation of large var types in NumPy so you can't create a pandas DataFrame from PyArrow with large var types.

Ah right I kinda forgot pandas series are essentially numpy arrays

Would be great to get some looks at https://github.com/apache/spark/pull/38624. Apply only has a pandas version right now so there's no way around the 2GiB limitation afaik

Attempted a PR for the arrow issue: https://github.com/apache/arrow/pull/36701. Though after doing some digging I think that was only causing one test to fail that's a weird case of trying to convert a double to a string as part of the arrow conversion. Arrow already supports converting pandas series of strings to large_string type (when the numpy type is object), but not a numpy string list (when numpy type is utf8). The former goes through https://github.com/apache/arrow/blob/main/python/pyarrow/src/arrow/python/numpy_to_arrow.cc#L324C9-L324C26 instead of the other Visit paths.
The other test failures were just due to arrow not having large type support when looking up the numpy type for an arrow type (also added that to the above PR). That can be fixed on the Spark side by just using np.object explicitly for string and binary types, but hitting a weird new test issue I'm trying to figure out.

Ah it's because ArrowConverters doesn't check the config for large types for WithoutSchema things, so you get a mismatch in the Java vector allocated for the record batch.


scheduler:CreateSchedule does not allow Target RoleArn to contain nested roles

Describe the bug
We are attempting to use the AmazonSchedulerClient to create a new schedule using the CreateScheduleAsync method. When I execute the method I get a validation error regarding the RoleArn of the target:
Amazon.Scheduler.Model.ValidationException: 1 validation error detected: Value <ARNVALUE> at 'target.roleArn' failed to satisfy constraint: Member must satisfy regular expression pattern: arn:aws(-[a-z]+)?:iam::\\d{12}:role\\/(service-role\\/){0,1}[a-zA-Z0-9\\+=,\\.@\\-_]+\r\n
The regex is expecting a non-custom role, i.e. it is not allowing me to submit an arn like this:
arn:aws:iam::123456789011:role/first/second/role-name
Is this validation correct?
Expected Behavior
Submitting a custom role arn as the RoleArn for the Target when creating a Schedule should be valid.
Current Behavior
Submitting a custom role arn as the RoleArn for the Target when creating a Schedule is not valid
Reproduction Steps
Use the sdk to create a Schedule, use a custom role arn for the Target.RoleArn property.
Possible Solution
Update the validation for the Target.RoleArn property.
Additional Information/Context
No response
AWS .NET SDK and/or Package version used
AWSSDK.Scheduler <IP_ADDRESS>
Targeted .NET Platform
.NET 6.0
Operating System and version
Windows 10

I'm seeing this also; this seems to make it impossible to create a schedule with the SDK. It looks like the same schedule can be fully created the same schedule directly in console.

This isn't specific to the .NET SDK... This appears to be a failure by the EventBridge scheduler team: https://docs.aws.amazon.com/scheduler/latest/APIReference/API_Target.html
This regular expression is defined by the service on the AWS side.

Ahhh thanks! Did some googling but never found this document. Anyone know how to report it to the scheduler team?

https://docs.aws.amazon.com/scheduler/latest/APIReference/API_Target.html

@indrora Thanks for linking to the API doc.
@LuckysGoat / @charryson Could you please share the following:

Type of role you are using when specifying arn:aws:iam::123456789011:role/first/second/role-name? Are these service-linked roles (refer Using service-linked roles?
The service and it's use case when creating service linked role.

The How EventBridge Scheduler works with IAM specifies that service linked roles are not supported right now. So just wondering how you are able to specify the RoleArn in the target via AWS Console.
Thanks,
Ashish

@ashishdhingra
We are not using service-linked roles.

@ashishdhingra We are not using service-linked roles.

@LuckysGoat Could you please share what type of role you are using? May be share the role Arn and screenshot from AWS Console which allows to use such a role.
Thanks,
Ashish

Looks like this was fixed in https://github.com/aws/aws-sdk-net/commit/65771a57803721d609140792520d59fd0d0e8a5b


Fix super-linter URL

The linked super-linter repo is a fork only:

This PR updates the URL to point to the main repository.

Please update PR to apply to "next" branch.

Please update PR to apply to "next" branch.

Thank you for retargeting. I also merged next to be sure that no conflicts occur.

I do not want a merge commit and I do not know how GitHub UI will handle this, so I may need to do some command line tweaking to manually accept this change.

I do not want a merge commit and I do not know how GitHub UI will handle this, so I may need to do some command line tweaking to manually accept this change.

Sure thing. GitHub UI should offer you "Squash and merge" - then you get a single commit containing the change here with a reference to the Pull Request (using #1019).
Example (from other repositories)

At https://github.com/DavidAnson/markdownlint/settings you can even forbid merge commits in general :p

My fear is that squash and merge will lead to a single commit that is also a merge. I've used it before, but not in a merge scenario like this. The problem is I won't know until it's too late because main and next are both protected branches in GitHub.

First of all, thank you for merging!

My fear is that squash and merge will lead to a single commit that is also a merge. I've used it before, but not in a merge scenario like this. The problem is I won't know until it's too late because main and next are both protected branches in GitHub.

I can fully follow. Each time, I press "squash and merge" at my JabRef repo, I have the same feeling. However, it worked for years now... -- The feeling when using merge queues gets worse - but we still have them in place :p


FlutterError.onError not catching exceptions produced in the app, as part of the SDK

Steps to Reproduce

Setup your app inside runZoned
Setup FlutterError.onError
Throw an exception from a button tap

Expected: exception would be captured by FlutterError.onError
Actual: exception is printed on console, but not captured by FlutterError.onError
Flutter Doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v1.12.13+hotfix.6, on Mac OS X 10.15.2 19C57, locale en-US)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 11.3.1)
[✓] Android Studio (version 3.6)
[✓] VS Code (version 1.41.1)
[✓] Connected device (1 available)

• No issues found!

Sample
import 'dart:async';
import 'package:flutter/material.dart';

Future<void> main() async {
  FlutterError.onError = (FlutterErrorDetails errorDetails) {
    print('This is an error on the Flutter SDK');
    print(errorDetails.exception);
    print('-----');
    print(errorDetails.stack);
  };
  runZoned(() {
    runApp(App());
  }, onError: (error, stackTrace) {
    print('This is a pure Dart error');
    print(error);
    print('-----');
    print(stackTrace);
  });
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: RaisedButton(
            child: Text('Throw'),
            onPressed: () {
              throw Exception('my error');
            },
          ),
        ),
      ),
    );
  }
}

Might be related #47447

According to this response to a similar question on stackoverflow,

It looks like when in debug mode, the flutter framework catches a lot of exceptions, prints to the console (and sometimes shows in the UI itself in red and yellow), but doesn't re-throw - so they are effectively swallowed and there's no way for your own code to catch them. But, when you deploy in release mode, this doesn't happen. So my minimal reproducible example does catch exceptions when built in release mode.

It seemed to work for me when I ran the app in --release mode.

@jorgecoca  did you find and answer to this? Followed the entire thread and didn't find something that solved your issue. Experiencing the same thing.

AFAIK it is still reproducible

Just want to report that as of Flutter Beta 1.17.0 I am still reproducing this.

It looks like this is happening since the WidgetInspectorService traps onError async, which in my case happens after I assign my own error handler.

Just chiming in to say this is still a problem and prevents Sentry from working properly

@alexobviously , I commented a work around for Sentry/any error reporter in the duplicate issue here.
It's an issue with Zone handling in debug mode.

I was facing the same issue, but when I tried in "release" mode on Android, I was able to see my custom logger capturing the Flutter errors, while when running on debug (from IntelliJ) my custom FlutterError.onError was being ignored. Maybe this info will help you!

I am also facing the same issue the callback  onError is not being called at all.

Having run all the code that is in the Crashy App but in vain. Nothing really happens.

Turning off "Flutter Structured Errors" in VSCode solves this for me and makes my custom error handler work.
Maybe there's a similar setting in other IDEs?

FlutterError.onError is not called if WidgetsFlutterBinding.ensureInitialized(); function is called in the main. But the ensureInitialized might be needed in some cases where some resources are to be accessed before running the app itself. How this case should be handled?

I also call WidgetsFlutterBinding.ensureInitialized(); in main, and it seems that I have the same issue : FlutterError.onError is not called.
Any solutions ?

code sample
import 'dart:async';
import 'package:flutter/material.dart';

Future<void> main() async {
  FlutterError.onError = (FlutterErrorDetails errorDetails) {
    print('This is an error on the Flutter SDK');
    print(errorDetails.exception);
    print('-----');
    print(errorDetails.stack);
  };
  runZoned(() {
    runApp(App());
  }, onError: (error, stackTrace) {
    print('This is a pure Dart error');
    print(error);
    print('-----');
    print(stackTrace);
  });
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: RaisedButton(
            child: Text('Throw'),
            onPressed: () {
              throw Exception('my error');
            },
          ),
        ),
      ),
    );
  }
}

logs
Launching lib\main.dart on Android SDK built for x86 in debug mode...
√ Built build\app\outputs\flutter-apk\app-debug.apk.
Connecting to VM Service at ws://<IP_ADDRESS>:50159/OdKo1a2e-fQ=/ws
D/EGL_emulation(18491): eglMakeCurrent: 0xe2f80060: ver 2 0 (tinfo 0xdaeadee0)
D/eglCodecCommon(18491): setVertexArrayObject: set vao to 0 (0) 1 0

════════ Exception caught by gesture ═══════════════════════════════════════════
The following _Exception was thrown while handling a gesture:
Exception: my error

When the exception was thrown, this was the stack
#0      App.build.<anonymous closure>
 package:master_flutter/main.dart
#1      _InkResponseState._handleTap
 package:flutter/…/material/ink_well.dart
#2      _InkResponseState.build.<anonymous closure>
 package:flutter/…/material/ink_well.dart
#3      GestureRecognizer.invokeCallback
 package:flutter/…/gestures/recognizer.dart
#4      TapGestureRecognizer.handleTapUp
 package:flutter/…/gestures/tap.dart
...
Handler: "onTap"
Recognizer: TapGestureRecognizer#4c465
    debugOwner: GestureDetector
    state: possible
    won arena
    finalPosition: Offset(184.0, 370.9)
    finalLocalPosition: Offset(31.6, 9.3)
    button: 1
    sent tap down
════════════════════════════════════════════════════════════════════════════════

I can confirm works  https://github.com/flutter/flutter/issues/48972#issuecomment-689750210

logs
Launching lib\main.dart on Android SDK built for x86 in debug mode...
√ Built build\app\outputs\flutter-apk\app-debug.apk.
Connecting to VM Service at ws://<IP_ADDRESS>:55515/LF7jtib9LWg=/ws
D/EGL_emulation(18291): eglMakeCurrent: 0xe2f805a0: ver 2 0 (tinfo 0xdae0f3c0)
D/eglCodecCommon(18291): setVertexArrayObject: set vao to 0 (0) 1 0
I/flutter (18291): This is an error on the Flutter SDK
I/flutter (18291): Exception: my error
I/flutter (18291): -----
I/flutter (18291): #0      App.build.<anonymous closure>
 package:master_flutter/main.dart
I/flutter (18291): #1      _InkResponseState._handleTap
 package:flutter/…/material/ink_well.dart
I/flutter (18291): #2      _InkResponseState.build.<anonymous closure>
 package:flutter/…/material/ink_well.dart
I/flutter (18291): #3      GestureRecognizer.invokeCallback
 package:flutter/…/gestures/recognizer.dart
I/flutter (18291): #4      TapGestureRecognizer.handleTapUp
 package:flutter/…/gestures/tap.dart
I/flutter (18291): #5      BaseTapGestureRecognizer._checkUp
 package:flutter/…/gestures/tap.dart
I/flutter (18291): #6      BaseTapGestureRecognizer.handlePrimaryPointer
 package:flutter/…/gestures/tap.dart
I/flutter (18291): #7      PrimaryPointerGestureRecognizer.handleEvent
 package:flutter/…/gestures/recognizer.dart
I/flutter (18291): #8      PointerRouter._dispatch
 package:flutter/…/gestures/pointer_router.dart
I/flutter (18291): #9      PointerRouter._dispatchEventToRoutes.<anonymous closure>
 package:flutter/…/gestures/pointer_router.dart
I/flutter (18291): #10     _LinkedHashMapMixin.forEach (dart:collection-patch/comp

flutter doctor -v
[✓] Flutter (Channel master, 1.22.0-10.0.pre.359, on Microsoft Windows [Version 10.0.19041.508], locale en-US)
    • Flutter version 1.22.0-10.0.pre.359 at C:\Code\flutter_master
    • Framework revision db6e2d8aa5 (2 hours ago), 2020-09-25 06:47:03 -0400
    • Engine revision 3a73d073c8
    • Dart version 2.11.0 (build 2.11.0-161.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at C:\Code\sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = C:\Code\sdk
    • Java binary at: C:\Code\android-studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[✓] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.3)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.7.30503.244
    • Windows 10 SDK version 10.0.18362.0

[✓] Android Studio (version 4.0)
    • Android Studio at C:\Code\android-studio
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.49.2)
    • VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.14.1

[✓] Connected device (4 available)
    • Android SDK built for x86 (mobile) • emulator-5554 • android-x86    • Android 10 (API 29) (emulator)
    • Windows (desktop)                  • windows       • windows-x64    • Microsoft Windows [Version 10.0.19041.508]
    • Web Server (web)                   • web-server    • web-javascript • Flutter Tools
    • Chrome (web)                       • chrome        • web-javascript • Google Chrome 85.0.4183.121

• No issues found!

Same issue on Flutter stable v1.22
Any solutions yet ?

Hi, @TahaTesser, @Nico04 !
This still only happens when running in a debugger, right?
I agree that the current behavior is unpredictable, since the attached debugger replaces the currently installed onError - handler some time after main is "complete".
But even if that was predictable - what should happen when both the debugger's (vscode in my case) and my own error handler is attached?
For me, turning off structured errors in vscode is fine, if I want to use my own error handler.
If I would like to use both, I would probably chain my handler to call the debugger handler as well, using a trick similar to https://github.com/flutter/flutter/issues/48972#issuecomment-645385209 to make sure my handler was the first responder.
So, as far as I see it, there are two viable workarounds to the problem, and nothing really blocking me.
Do you have other expectations here that I'm not thinking of? :)

this is not working for me in debug or release mode, onError does not catch any Flutter SDK error

From @julianbraasch's example:

I changed the line
onPressed: () {
  throw Exception('my error');
},

to
onPressed: () async {
  final result = await longFunction().timeout(Duration(seconds: 5));
  print(result);
}

All I had to do was make the callback async and the error was no longer caught by Flutter.onError:
onPressed: () async {
  throw Exception('my error');
},

I guess this makes sense because onPressed isn't an async function so its an uncaught async exception, but I couldn't find any mention of Flutter.onError only catching synchronous exceptions.
To make this extra confusing, in our case the exception also wasn't landing at the zone's onError callback. This means even with both onError handlers configured to report uncaught exceptions, there are still uncaught and unreported exceptions.
Future<void> main() async {
  FlutterError.onError = (FlutterErrorDetails errorDetails) {
    print('This is an error on the Flutter SDK');
    print(errorDetails.exception);
    print('-----');
    print(errorDetails.stack);
  };

  WidgetsFlutterBinding.ensureInitialized(); // <- (1) called in a different zone as `runApp`
  runZoned(() {
    // WidgetsFlutterBinding.ensureInitialized(); // <- (2) called in a the same zone as `runApp`
    runApp(App());
  }, onError: (error, stackTrace) {
    print('This is a pure Dart error');
    print(error);
    print('-----');
    print(stackTrace);
  });
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: RaisedButton(
            child: Text('Throw'),
            onPressed: () async { // <- uncaught async exception
              throw Exception('my error');
            },
          ),
        ),
      ),
    );
  }
}

When only (1) is uncommented, the error does not land at either onError handler.
When only (2) is uncommented, the output is This is a pure Dart error
(related #50188).

I was experiencing this issue and I was able to achieve the expected behavior by doing this:
Future<void> main() async {
  runZonedGuarded(() {
     WidgetsFlutterBinding.ensureInitialized();

     FlutterError.onError = (FlutterErrorDetails errorDetails) {
       print('This is an error on the Flutter SDK');
       print(errorDetails.exception);
       print('-----');
       print(errorDetails.stack);
    };

    runApp(App());
  },
  (error, stackTrace) {
    print('This is a pure Dart error');
    print(error);
    print('-----');
    print(stackTrace);
  });
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Column(
          children: [
            RaisedButton(
              onPressed: () {
                Future.delayed(Duration.zero, () => throw Exception('async error'));
              },
              child: Text('async error'),
            ),
            RaisedButton(
              onPressed: () {
                throw Exception('sync error');
              },
              child: Text('sync error'),
            ),
          ],
        ),
      ),
    );
  }
}

it seems that moving the WidgetsBinding.ensureInitialized() and FlutterError.onError inside the runZonedGuarded call makes it so the following happens in debug builds (haven't been able to try a release build:

the synchronous error is reported via the FlutterError.onError path
the asynchronous error is reported via the runZonedGuarded error callback

got the same issue, any official reply?

My solution:
void main() {
  FlutterError.onError = (FlutterErrorDetails details) async {
    // Send to Zone handle
    Zone.current.handleUncaughtError(details.exception, details.stack);
  };
  runZoned<Future<Null>>(() async {
    runApp(MyApp());
  }, onError: (error,  stackTrace) async {
    // You can handle error
  });
}

Having the same problem. Tried the solution above, didn't work, exceptions thrown from Futures are just swallowed, no log message no visual indicator on emulator. Not sure if it happens with all futures or only some, most of my code is async and I vaguely remember seeing exceptions as errors in my console before.
I haveWidgetsFlutterBinding.ensureInitialized(); in my main function cause I need it.
added this code below, doesn't seem to change anything:
runZonedGuarded<Future<void>>(() async {
      runApp(MyApp());
    }, (error, stackTrace) async {
      print(error.toString());
      throw error;
    });

In this example, the exception in not intercepted.
Real issue.
Future main() async {
  WidgetsFlutterBinding.ensureInitialized();

  runZonedGuarded(() {
    FlutterError.onError = (FlutterErrorDetails details) {
      print(details.exception);
      print(details.stack);
    };
    runApp(App());
  }, (Object error, StackTrace stack) {
    print(error);
    print(stack);
  });
}

class App extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        brightness: Brightness.dark,
        backgroundColor: Colors.black,
      ),
      home: WillPopScope(
        onWillPop: () async {
          throw Exception("test");
          return false;
        },
        child: Scaffold(),
      ),
      debugShowCheckedModeBanner: false,
    );
  }
}

@darshankawar could you close this as duplicate of https://github.com/flutter/flutter/issues/41540?

@nt4f04uNd
I have closed the other one in favor of this since this issue has more activity and higher upvotes


feat: improve lookup performance and allow composite key lookup

#1205
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[x] ✨ New feature (a non-breaking change that adds functionality)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
This PR speeds up lookup by doing direct lookups of specific target ids, as well as reduce the amount of unnecessary work by removing the already processed where call. As a side effect, it also allows for composite key lookup if passed as a string ([key1,key2]).
Some naive benchmarks of this: Adding 10000 entities into the store and then finding an entity by id 100 times took 1ms with this PR and 196ms with the current version.
Resolves #1205
📝 Checklist

[x] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Codecov Report
Patch coverage: 95.23% and project coverage change: -0.02 :warning:

Comparison is base (401a1d6) 99.64% compared to head (dfbc504) 99.62%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1206      +/-   ##
==========================================
- Coverage   99.64%   99.62%   -0.02%
==========================================
  Files          88       88
  Lines        5882     5898      +16
  Branches      538      543       +5
==========================================
+ Hits         5861     5876      +15
- Misses         19       20       +1
  Partials        2        2

Impacted Files
Coverage Δ

packages/pinia-orm/src/query/Query.ts
99.43% <95.23%> (-0.09%)
:arrow_down:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

This should probably be documented, that you can now directly look up composite keys.

Ok I made a pr for it https://github.com/CodeDredd/pinia-orm/pull/1621


Please add PBE support

It should actually work in PBE. If it doesn't work, then offsets in PBE are different.


Adds untested link fix; clarifies language for similar link.

Broken Docs Link Fix
@agraebe, could you take a look at this suggested link fix? Not sure if this is the correct approach, or what I may have missed. 🙏
I was looking at the docs tooling and organization and found a broken link. Thought I'd make a quick PR to fix it. I reviewed the  contributor README and the navigation.yaml, but didn't take the time to test by installing npm, yarn, and other dependencies, so this is just a guess to the correct syntax for the link.
Type of Change

[ ] New feature
[ ] Bug fix
[x] API reference/documentation update
[ ] Other

Does this introduce a breaking change?
As mentioned, I did not test this change, so maybe?
Checklist

[x] Code is commented where needed
[ ] Unit test coverage for new or modified code paths
[ ] npm run test passes
[ ] Changelog is updated
[x] Tag 1 of @person1 or @person2

 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.


Signal binding behavior - error when inside if.bind

When an element containing a binding with a signal is removed from and/or readd to a view (using an if.bind or similar) an error is thrown:

Remove: ReferenceError: signals is not defined
Readd: Error: A binding behavior named "signal" has already been applied to ...

Seems to be fixed by changing
let bindings = signals[name];

to
let bindings = this.signals[name];

on this line https://github.com/aurelia/templating-resources/blob/master/src/signal-binding-behavior.js#L27

thanks @zebrooks !


Test HTTPS compatibility with old browsers

I set up the HTTPS configuration to be pretty secure, it gets a good grade at SSL Labs: https://www.ssllabs.com/ssltest/analyze.html?d=demo.gbif.org
That may be "too secure", meaning we block too many XP users, or old Androids etc.  However, it may be that so many sites also block them, they are forced to upgrade anyway.
We need to investigate the statistics and see if there's a potential issue here.

I have tested ie versions with virtual box
failed
ie9 windows7 fails
ie10 windows 7 fails
worked
ie10 windows 10 works
ie11 windows7 works
We have little support for ie8 and ie9 on the site as we make use of more modern css and js.

IE10 windows 7 works for me


Use Promise.prototype.finally in the PDFRenderingQueue.renderView method

Since finally is now supported through src/shared/compatibility.js, the temporary variable is no longer necessary.
Also, this patch fixes the inconsistent return type of PDFRenderingQueue.getHighestPriority when no pages/thumbnails are visible.

/botio-linux preview

That's nice, thanks!


Replace node-fetch with undici

Confirm this is a feature request for the Node library and not the underlying OpenAI API.

[X] This is a feature request for the Node library

Describe the feature or improvement you're requesting
I noticed this library is still using node-fetch because Node's native fetch is considered experimental.
I think it'd be in the libraries best interest to switch to undici instead. Undici is the fetch implementation in Node.js. For all intents and purposes it is stable (https://github.com/nodejs/undici/issues/1737). We (the maintainers of Undici) have some concerns about marking it as such in Node.js just yet because of the nature of the Fetch api  spec (it itself adds breaking changes occasionally - this doesn't fit well with Node.js versioning strategy. It's complicated - read the issue I linked above for more details).
Switching the undici for the shim will enable a significantly easier upgrade path in the future whenever we figure out how to mark it as properly stable in Node.js
Happy to help swap this out too if the maintainers approve 😄 🚀
Additional context
No response

Hi @Ethan-Arrowood,
Thanks for raising this, it's something we'd be open to – and I appreciate the offer of help.
There are a few related packages we rely on in the node-fetch ecosystem we rely on as well; could you help advise on replacements?
They are:

agentkeepalive for reusing connections
formdata-node and form-data-encoder for multipart file uploads
abort-controller (I assume this will Just Work with undici?)

Undici's agent is keep-alive by default 😄 and completely customizable too.
We have our own spec compliant formdata implementation directly in undici
Native AbortController just works 😄

Great!

Do you know of docs or a guide on how to configure your keep-alive agent to disable Nagle's algorithm and get other optimizations from agentkeepalive? I'm sure we can figure this out ourselves, would just save some eng time.
That's great to hear. Do you simply export FormData classes and similar? I'm not immediately finding that in the docs. What about Blob and File classes? (Right now we have to use a third party dep for those as well).
Great, looks like native AbortController is supported in all non-EOL Node versions now.

If you'd be willing to take a crack at porting this, it'd certainly be tremendously appreciated. I think the toughest part will be our file uploads machinery (especially mucking without cross-environment support). We have pretty extensive tests (look for ecosystem-tests). You're welcome to ping by email with any questions.
If that proves to be too big an ask, we can add this to our roadmap, it does sound like a good thing to do.

Yeah apologies our docs aren't ideal. There is a ton of extensibility though.

https://undici.nodejs.org/#/docs/api/Agent is our docs on the Agent class. Combine this with this https://undici.nodejs.org/#/?id=undicisetglobaldispatcherdispatcher method and you can customize the Agent that all fetch calls will use by default. I can't remember exactly how this would play if a downstream user overwrites it though with their own call to setGlobalDispatcher so the custom agent can also be passed to the fetch call directly via the dispatcher option (https://github.com/nodejs/undici/blob/63afd9b5e28380dc86de29ade69adaad7efcd231/types/fetch.d.ts#L117).
Yes we do! All those exist. Yeah the docs don't make that obvious (wow I really gotta fix that 😅 ) but here is the code path for File and FormData: https://github.com/nodejs/undici/blob/main/index.js#L119-L120 and Blob is non-experimental in Node since v18 https://nodejs.org/api/buffer.html#class-blob
🎉

Happy to do so! Let me take a swing at things next week.
I'll also say, are you strictly tied to using Fetch for some sort of interim reasons? Or is the Node.js part of this distinct enough that you could use a better networking client? Undici itself has much better APIs such as .request and .stream and .pipeline that deliver significantly faster throughput than Fetch. The library is an official Node.js project and is the recommended HTTP client for all new Node.js projects. Maintainers include Node.js TSC members and long time contributors.

Interesting, I didn't know that undici offered a different, faster request interface as well.
There are a few considerations I'd have:

We currently use native fetch on platforms where it's available, partly because node-fetch wouldn't work in non-node envs but partly because some runtimes may desire/expect/require native fetch to be used (for example, I believe Vercel Edge Runtime manipulates outgoing requests). I don't feel strongly about doing this but if we were to move away from native fetch by default on these platforms, it would have to be a very well-researched decision with few to no tradeoffs.
We accept a user-provided fetch function in client instantiation, and we'd want to continue to do so.

I'd be a little worried about bifurcating our request pathways between "env-or-user-provided fetch" or "built-in undici .request et al", but if it's what you'd recommend after considering the above and exploring the codebase, I'm certainly open to it!

Let's start with switching to undici fetch. Would love to dig in deeper in the future. I think it's an interesting problem. This is exactly what fetch in node exists for - interoperability. I think you have an amazing example of cross environment javascript sdk 😁

Thanks Ethan! Very excited to see what you come up with!

Undici fetch does look better! 🎉
My reverse proxy for api.openai.com has a default open setting response buffer, which takes some time to buffer data on HTTP/1.1. This is not ideal for streaming output of completion data.
I spent a lot of time trying to figure out this problem.
I don't know how to make node-fetch support HTTP/2, so changing to undici is a better idea.


Problem in dispatchFibaroEventToMqtt(event) if a scene has the same identifier as a device

Hello and I wish you a happy end of the year,
I send you this message to inform you of a problem:
The devices and a scene in question (I specify that for the moment only 5 floodSensors are exported to Home Assistant, and therefore no motionSensor or other device)
1 floodSensor (id 142)
1 Scene (id 142)
1 motionSensor (id 175)
My explanation, which I hope is clear:
In my case, the motionSensor (#175) triggers a scene (#142) to turn on a socket for a while (it works fine for a long time with a scene).
The floodSensor is waiting for him to report a leak. (no problem with the leak sensor)
But here I have the impression and even the certainty that the event triggered by the scenario #142 and understood for an event of the floodSensor #142.
I think you should make changes in the function : dispatchFibaroEventToMqtt(event)
Attached is a screenshot of the last log.

Best regards.

Hi @rico0260
Do you have your scene/automation set on Fibaro HC3 or Home Assistant?
QuickApp has no impact how your scene works on Fibaro HC3, but I'm happy to help.
If this is on HC3 side - can you send me your scene screenshots, and also it's copy in Lua format, so I can see what might be needed to get fix?

Hello Alexander Vitishchenko,
Yes my scene is configured in HC3,
Yes, I observed that the QuickApp has no impact on the scene, but the QuickApp intercepts the scene and takes it for an event of a floodSensor device which has the same ID (#142) automatically defined in the box HC3.
Attached the configuration of the scene:

the same scene converted to Lua code:

Best regards.

Hello Alexander Vitishchenko,
I think we should check the origin of the event because in my case it is not from a device but from a scene:

Always available to help.
Best regards.

If i understand correctly this is not an issue, but an extra log line in the QA about some event.  If that's the case, it is not the only event that gets captured by the QA, as it should. You can safely ignore those log lines.

A scene is not a device, so I made a pull request to inform the author of my modification.
Have a good year.

Absolutely, I'll adjust the logging in a way it produces more relevant text messages for QuickApp users. There several places like this, including but not limited to scene-related events.
The initial intention was to capture any anomaly in the logs using "the more the better" approach, but without spending much time out refining the text. Luckily it is possible to do better now and the focus is to improve usability and long-term stability.


Installing fenics into an existing conda environment: libcppunit

Hi Juanlu,
I would like to use your recipe to install FEniCS into an existing miniconda environment.
This environment is designed to support a program called cellmodeller, which has its own python command cmpython. cmpython behaves like system python, but has all of its dependencies placed in a miniconda environment, stored under $HOME/miniconda.
To install, I tried

$ $HOME/miniconda/bin/conda install fenics --channel juanlu001

Which installs without complaint. However, when I tried to import dolphin from cmpython, I got the error

$ cmpython -c “from dolfin import * ”

ImportError: libboost_filesystem.so.1.55.0: cannot open shared object file: No such file or directory.

I solved this using the fix listed at https://github.com/Juanlu001/fenics-recipes/issues/8:

$ $HOME/miniconda/bin/conda install "boost=1.55" --channel juanlu001

which solves the boost problem, but gives a different error:

$ cmpython -c “from dolfin import *”

ImportError: libcppunit-1.13.so.0: cannot open shared object file: No such file or directory

Do you have any ideas on how to fix this?
Many thanks,
Will

PS: to solve this, I also tried creating a new conda environment inside the original, and installing fenics in the inner environment, as per this recommendation: https://github.com/Juanlu001/fenics-recipes/issues/8

$ $HOME/miniconda/bin/conda create -n fenics27 python=2.7 ipython=2.2
$ source $HOME/miniconda/bin/activate fenics27
(fenics27)$ conda install fenics --channel juanlu001

unfortunately, the installation isn’t visible to cmpython:

(fenics27)$ cmpython -c “from dolfin import *”

ImportError: No module named dolfin

nor does this fix work for regular python (same problem as before):

(fenics27)$ python -c “from dolfin import *”

ImportError: libcppunit-1.13.so.0: cannot open shared object file: No such file or directory

Hope this is useful.
W

Hello @WilliamPJSmith, thanks for the bug report and sorry for the delay. I suspect that your Linux system is too old for this version of libcppunit (some old CentOS or Ubuntu?), so I suggest installing fenics 1.4.0 as explained in http://fenicsproject.org/download/installation_using_conda.html#importerror-lib64-libc-so-6-version-glibc-2-14-not-found. If everything works this way I will close the issue.

Feedback needed, please reopen if error persists.


issue #611: shouldShowSettingsDialog should be persisted through activity recreation

will fix #611

Issue 611 has already been taken care of by me.
https://github.com/android/nowinandroid/pull/698

@hoc081098 thanks for contributing this PR! We evaluated your solution proposed here and the one in #698 as potential solutions along with a third one, and we ended up deciding on the third option merged in #713.


HTML

HTML
User Story
As a boot camp student,
I want a Prework Study Guide website,
so that I can review all the information I learned throughout Prework.
##acceptance Criteria
GIVEN a Prework Study Guide website
WHEN I visit the website in my browser
THEN I see four boxes titled HTML, CSS, Git, and JavaScript with associated notes listed
WHEN I view the study guide
THEN I see a dark blue header and footer, and four boxes with a shadow
WHEN I open the console in my browser
THEN I can see the four topics I learned listed along with a suggestion on what I should study first
WHEN I visit the website using the URL
THEN I can access my website from any browser

completed 1/8


feat(organization): Sort organizations by title

Organizations seems to be sorted by their id currently. Would like to see them sorted alphabetically.
Test:
/api/agency

:+1:


Bug: Checklists are not currently supported (Delta to markdown )

Delta to markdown

insert⟨ Dads ⟩
insert⟨ ⏎ ⟩ + {list: unchecked}
insert⟨ 1212 ⟩
insert⟨ ⏎ ⟩ + {list: checked}

get:
- Dads
- 1212

should be:
[ ] Dads
[*] 1212

This should be fixed by #18

Your example were helpful creating the test case for this feature ❤  thank you:
https://github.com/TarekkMA/markdown_quill/blob/cc84634c83267602e5baa1fc03eb9a665ca7d419/test/markdown_to_delta_test.dart#L1501-L1512
https://github.com/TarekkMA/markdown_quill/blob/cc84634c83267602e5baa1fc03eb9a665ca7d419/test/delta_to_markdown_test.dart#L454-L467

markdown_quill: ^3.1.0 Now supports this featuer


The RPT unspecified : ADFS error MSIS7007 --  The RPT must be added manually not with generic 0365 metadata

[Enter feedback here]
Hello,
this part is wrong : https://docs.microsoft.com/en-us/azure/active-directory/external-identities/direct-federation-adfs#add-the-relying-party-trust-and-claim-rules
If you create the RPT using the metadata the tenantID of the service provider (AzureAD) will not  be populated resulting in ADFS/IDP error : "MSIS7007: The requested relying party trust 'https://login.microsoftonline.com/1e37c4d1-75c2-4cb2-962f-1fbc65211f63/' (that is the tenant id of the party offering the service - so AzureAD)  is unspecified".
I worked it out in this way (using WSFed protocol) :
Create a new RPT manually , WSFed protocol, WS passive protocol url : https://login.microsoftonline.com/login.srf , relay party trust identifier : (here put the tenantID of the service partner AzureAD tenant) : https://login.microsoftonline.com//  , example https://login.microsoftonline.com/1e37c4d1-75c2-4cb2-962f-1fbc65211f63/ . Create claims rules as stated by the documentation.
Otherwise you are federating the partnerIDP tenant with 0365 for generic 0365 services.
Don't forget also to configure the other side, the Azure tenant (service tenant) with this : https://docs.microsoft.com/en-us/azure/active-directory/external-identities/direct-federation#step-3-configure-samlws-fed-idp-federation-in-azure-ad
Daniele Bona
<EMAIL_ADDRESS>Global Technology Team
Security

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

ID: 73f77b32-b5d1-9c2e-dfd4-7ad191dbd871
Version Independent ID: ad120312-98ef-4db4-ffca-ca11f29e5c5e
Content: Set up SAML/WS-Fed IdP federation with an AD FS for B2B - Azure AD
Content Source: articles/active-directory/external-identities/direct-federation-adfs.md
Service: active-directory
Sub-service: b2b
GitHub Login: @msmimart
Microsoft Alias: mimart

@dbona75
Thanks for your feedback! I've assigned this issue to the author who will investigate and update as appropriate.

Hi @dbona75, thanks so much for pointing this out and providing details about how you resolved the issue. We've updated the article, and the changes should be published shortly. At that time, this issue will be closed automatically. Thanks again for your feedback!


IP Address Roles Similar to Prefix / VLAN Roles

As ...
Austin - Network Automation Engineer
I want ...
To define my own IP Address Roles like we can with Prefixes.
So that ...
If I have a prefix whose role is Production Server Data, or something to that effect, an IP address inside of that prefix could have the role of "gateway" (custom made role) or something to that effect.
My use case is right now defining IP Addresses which are Multicast Group IPs.
I know this is done when...
In addition to the pre-defined IP Address Roles, administrators can define their own roles as well.
Optional - Feature groups this request pertains to.

[X] Automation
[ ] Circuits
[ ] DCIM
[X] IPAM
[ ] Misc (including Data Sources)
[ ] Organization
[ ] Plugins (and other Extensibility)
[ ] Security (Secrets, etc)
[ ] Image Management
[ ] UI/UX
[ ] Documentation
[ ] Other (not directly a platform feature)

Database Changes
Model would need to be edited to allow for creating new entries in that table.
External Dependencies
No response

Good news! This is already supported in v2. :-)

As Glenn pointed out, this is implemented in v2, so I will close this out.


bug(keyboard): this plugin blocks scroll to input

When using this plugin with ionic, clicking an input does not scroll to it anymore.
Removing the plugin fixes it, but I really like this plugin

Hi @jiangfengming
Did you fixed the issue? I will be really thankful if you can fix it soon.


sbat: Conditionally enable alloc feature of ascii crate

(Splitting this out of https://github.com/google/sbat-rs/pull/56)

Codecov Report

Merging #59 (200b481) into main (3472497) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #59   +/-   ##
=======================================
  Coverage   96.51%   96.51%
=======================================
  Files          11       11
  Lines         889      889
=======================================
  Hits          858      858
  Misses         31       31


Is there a way to use this package with an existing data

I suppose the best way of using this package is to use it from the beginning. But I already have data in the database and I would like to integrate this package.
When I try to do this, in particular, to update two documents, I got an error:
No document found. Make sure you provide an _id field for a document that exists. You passed: {"_str":"54c6b04c523e1f182e006a9b"}

The code I used to update looks like this:
tx.start('update');
if (Tags.update(doc1._id, modifier1, {tx: true}) !== 1) {
      throw new Error('Database update failed');
}
if (Tags.update(doc2._id, modifier2, {tx: true}) !== 1) {
      throw new Error('Database update failed');
}
tx.commit();

When I took a closer look, I found that this package does not use ObjectId for _id field but a plain string. This seems to cause the problem. What was the purpose of doing this? Is there a way that I can use this package with existing data without modifying them?

Yes, unfortunately this package has no support for anything but string _id values.  It was only ever designed with string _id values in mind, as that's what Meteor generally uses.  There's no way to use this package with native Mongo object _id values - it would need quite a substantial refactor first.

Thank you @JackAdams for clarifying. I think  I can try passing in the ObjectId into update by wrapping it around: {_id: doc._id}.
Closing the issue.