Documentanion/action request: Dogfood the prettier-plugin-liquid module

Is your feature request related to a problem? Please describe.
Yes, setting up Yarn Berry + Prettier + prettier-plugin-liquid requires many steps, and outside documentation which I have not successfully replicated.
Describe the solution you'd like
The CI https://github.com/Shopify/theme-tools/blob/main/.github/workflows/ci.yml is updated to invoke Prettier + prettier-plugin-liquid to check code, done in the same way that a normal customer would use it to check their own HTML+Liquid files.
Describe alternatives you've considered
Not use prettier-plugin-liquid
Checklist

[x] I have checked and made sure that the proposal adheres to this plugin's principles

Additional context
Add any other context or screenshots about the feature request here.

Okay, I've been working on this all week. I think this is the package.json file that's required to actually use @Shopify/prettier-plugin-liquid:
{
  "license": "UNLICENSED",
  "devDependencies": {
    "@shopify/prettier-plugin-liquid": "^1.5.0",
    "prettier": "^3.3.3"
  },
  "scripts": {
    "prettier-check": "yarn prettier --check .",
    "prettier-fix": "yarn prettier --write .",
    "postinstall": "yarn dlx @yarnpkg/sdks vscode"
  },
  "packageManager"<EMAIL_ADDRESS>  "dependencies": {
    "front-matter": "^4.0.2"
  },
  "dependenciesMeta": {
    "<EMAIL_ADDRESS>{
      "unplugged": true
    }
  }
}

And all these notes seem to be missing from documentation.

Here is a successful attempt at setting up Yarn Berry + Prettier + prettier-plugin-liquid + VS Code and it required many undocumented tricks.
Full implementation at https://github.com/fulldecent/github-pages-template
And you are welcome to take these as documentation for this repo.

I have posted above the full implementation of how I'm running prettier and how I think I'm running prettier-plugin-liquid module.
I've read the documentation here in this repo when setting it up and it seems correct.

Can you please help me see how to properly run Yarn Berry + Prettier + prettier-plugin-liquid so that it runs correctly? And perhaps we can include this as a specific documentation.
This is very difficult to set up. Especially if you want VS Code and GitHub Actions to work. And so a nice guide here will be really helpful for everyone.

Ah sorry I've been thrown off by the error message. It looks like it's because the parser name we have for Liquid is liquid-html. Liquid has no notion of HTML and we were leaving room to have a string Liquid pretty-printer.
Try changing your override to liquid-html instead of liquid. I suspect it's not finding the liquid override you're trying to use and is using the default instead.
https://github.com/Shopify/theme-tools/blob/main/packages/prettier-plugin-liquid/src/parser.ts#L11

the screenshot says liquid?


DragonFlyBSD supports sched_getcpu()

In addition to sched_setaffinity() and sched_getaffinity(), DragonFlyBSD also provides a way to check which CPU a thread is currently executing on.

r? @Amanieu
(rust-highfive has picked a reviewer for you, use r? to override)

@bors r+

:pushpin: Commit 29851994b64a58759b5c9cc618a6162b7970fdf8 has been approved by Amanieu

:hourglass: Testing commit 29851994b64a58759b5c9cc618a6162b7970fdf8 with merge 310b698f33e3026b60e855fc2172689583d376d6...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12, checks-cirrus-freebsd-13
Approved by: Amanieu
Pushing 310b698f33e3026b60e855fc2172689583d376d6 to master...


Merge: fix cors issue for api services portal

Backend coverage reportCoverage after merging FSADT1-287-api-gateway into dev will be6.77%
Coverage ReportFileStmtsBranchesFuncsLinesUncovered Linessrc   app.controller.ts100%100%100%100%   app.module.ts0%0%100%0%1, 13, 13–14, 14, 18, 18–19, 19, 2–3, 30, 4–6   app.service.ts100%100%100%100%   main.ts0%0%0%0%1, 11–12, 14, 14, 14, 14–15, 2, 25, 27, 3, 33, 35, 35, 35, 35, 35–36, 38, 4, 45, 47, 5, 8src/clientpublicview   clientPublicView.module.ts0%100%100%0%1, 14, 2–5src/clientpublicview/controllers   clientPublicView.controller.ts0%100%0%0%1, 11, 2, 20–21, 3–4, 40, 46, 5, 55–56, 9src/clientpublicview/entities   clientPublicView.entity.ts0%100%100%0%12, 18, 2, 24, 3, 30, 36, 42, 7src/clientpublicview/services   clientPublicView.service.ts0%0%0%0%1, 100, 102, 104, 11, 14, 2, 20, 22, 28, 3, 33–34, 36, 38, 44, 44, 44, 44–45, 5, 50, 6, 64, 64, 64, 64, 64–65, 7, 70–71, 71, 71, 71–72, 75, 75, 75, 75–76, 79, 79, 79, 79–80, 84, 86, 94, 99src/core   CoreConstants.ts0%100%100%0%1–2src/pagination/dtos   page-meta.dto.ts0%100%0%0%1, 12, 15, 18, 21, 24–29, 4, 6, 9   page-option.dto.ts0%0%0%0%1, 10, 14, 2, 20, 24, 3, 32, 37, 5, 5, 5–7   page.dto.ts0%100%0%0%1, 10–11, 14–15, 2–3, 5, 8

DEV deployments have completed successfully!
Backend: https://nrfc-25-backend.apps.silver.devops.gov.bc.ca/
Frontend: https://nrfc-25-frontend.apps.silver.devops.gov.bc.ca/

Your Pull Request code is being promoted!  Please follow the link below.
Main Merge Workflow


[OneExplorer] Keep selected files in default explorer view

What?
Let's keep selected file while moving from one explorer view to default explorer view.
So the user can just select any file and locate it under default file explorer view.
Why?
Basically, One Explorer is a view which helps users to use onecc easily.
It's not a file explorer.
User may want to look at the file's location in the file explorer view.
Let's support users to switch between OneExplorer and default vscode explorer while keeping the file selection.
POINT1 If any file is opened, it's selected in default explorer view, automatically.
For example, there are some files that are supported to open in a view : *.log.
Those files are kept in its selection while user moves to vscode explorer.
In other word, if OneExplorer supports editors(openViewTypes) for all the files it supports, the feature will be automatically supported, too.
POINT2
The feature : "Get selected file/folder in the explorer view" seems not being officially support yet
https://github.com/microsoft/vscode/issues/3553

@lemmaa FYI, from the short research, it seems not possible to "select a file from One Explorer and show in default explorer". Vscode's api doesn't support it.
By workaround, we can make it to 'open every file' in view. If it's kept opened in any editor, default explorer can 'select' it automatically. But I doubt that's the one you look for. :cry:

Let's support users to switch between OneExplorer and default vscode explorer while keeping the file selection.

Oh, I think your idea is cool. If all the files we deal with have an appropriate editor, it will be a natural and useful experience.
Regarding the display of selected files on the Explorer View, I was just expecting the "Reveal in Explorer View" function of the file tab to be added to the context menu of ONE Explorer. This is probably not a problem with the current implementation. :)


performance regression since 1.7.0

Since #4 and the release of 1.7.0 there has been a performance regression. I guess it should have been expected.
This should be caused by me because I'm re-instancing markdown-it at each component/composable use

This regression is mainly due to awaiting shiki:
https://github.com/Sandros94/nuxt-markdown-render/blob/4a1ebaf89a4f3b0a86f7fe2f30899ec0e4b95962/src/runtime/components/nuxt-markdown.vue#L87
I wonder if it is possible to just lazy load it and make the colors just pop, like on GitHub


Fixes #148 condition timeout calculation units

When using a pollDuration and pollInterval, the condition timeout
was incorrectly coverting units.  Added test.

@metatype Your change in the ConditionAwaiter makes perfectly sense for me. I have a question regarding the test. I suggest changing the pollDelay to 1000 millis, actually. With 100 (hundred) millis the test failed on my local machine (with condition evaluated in approx. 900-990 ms) and when I changed to 1000 it failed for the old code, but did not fail after I applied your change in the ConditionAwaiter. For me this makes sense, because the values of pollDuration and atLeast fit and your change fixes the calculation problem. Do you agree with me? If yes, can you adjust your PR, please?
https://github.com/awaitility/awaitility/pull/153/commits/6d776b8213c56d2955b63c10cd3ca1bd515b7011#diff-df0a511c16417abf1238aef5c9aaa77eR29


Questions about val loss

Hi, @raymin0223. Thank you for opensource code !
When I reproduced your code, I found that the validation curve kept increasing, and the training curve started to increase around 30 epochs. Additionally, I followed your code and the score I obtained was only 58.46. Are these situations normal?
Thank you very much !

Hi @LWYgut,
Thanks for your interests in our work!
As I have never plotted the loss curves, I'm not sure, but I believe that train loss was always decreased.
Also, val loss and accuracy were unstable and fluctuated a lot, and it seems like the issue might be due to the ICBHI dataset itself.
For your reproduced results, it looks weird if you use PatchMix CL loss.
Checking issue #3 might be helpful.

Okay, I understand. Thank you for your reply. Wishing you success in your work!


plugins: extending Plugin abstract class throws an error

while developing a plugin if the main Plugin class tries to extend the Plugin abstract class we get an error while building
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| import Registry from './registry';
> export declare abstract class Plugin {
|     abstract initialize(register: Registry): boolean;
| }

This seems to have been fixed.


Nwe Arabic Source

Source name
Gate anime
Source link
https://e.gateanime.com/
Language
Arabic
Other details
Anime Source
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a title with source name.
[X] I have checked that the extension does not already exist on the website extensions list or the app.
[X] I have checked that the extension does not already exist by searching the GitHub repository and verified it does not appear in the code base.
[X] I will fill out all of the requested information in this form.

Duplicate of #261


Updates the Distributed CPU documentation to add a Kubernetes example

This is a placeholder PR with a draft of updating the distributed CPU training documentation to add a Kubernetes example.

Closing, since the PR has been posted to transformers


fish-foreign-env: git-20170324 -> git-20200209

Motivation for this change
"^ as a redirection deprecated and will be removed in the future."
(see the changelog, under the 3.0b1 release)
The latest fish release (3.1.0 as of time of writing) errors when
encountering ^&1 (though the fact it is now an error has yet to be
documented by them). The plugin was updated last year to account for
this change, and with the release of fish-shell v3.1.0, this
should be fixed.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[ ] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[x] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

cc @jgillich

@GrahamcOfBorg build fish-foreign-env

I have tested this locally, and it indeed fixes compatibility with 3.1.0.
I also checked it's still compatible with the 3.0.2, so merging this should not break anything.


Datagrid fails to render if added to virtual dom

Package
Carbon for IBM Products
Description
Edge case that we see in SOAR when rendering Datagrid using virtual DOM.
const tableDomNode = document.createElement('div');
ReactDOM.render(, tableDomNode); //  renders Datagrid with data
Component(s) impacted
Datagrid fails to render and an error is shown in console logs
chunk-OK4P3QOP.js?v=41e20ba8:3748 Uncaught TypeError: Cannot read properties of null (reading 'querySelector')

Browser
No response
@carbon/ibm-products (previously @carbon/ibm-cloud-cognitive) version
v2.21.0
Severity
Severity 1 = The design is broken in a critical way that blocks users from completing tasks or damages the brand. Affects major functionality, no workaround.
Product/offering
SOAR
CodeSandbox or Stackblitz example
https://stackblitz.com/edit/github-peuqjs?file=src%2FDatagridCrash%2FDatagridCrash.jsx,src%2Futils%2Fhelpers.jsx
Steps to reproduce the issue (if applicable)
Steps to reproduce

open stackblitz url
click View table

Expected results
Datagrid table is rendered in screen without any errors
Actual results
Table is not rendered and there is error in console logs
Release date (if applicable)
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct
[ ] I checked the current issues for duplicate issues

Hi @matthewgallo @amal-k-joy we've added fix for this


themes competibility with Vue Storefront 1.9.0-rc.2

I'm trying to install vuetique theme on Vue storefront 1.9.0-rc.2.
But, my theme not changed with vuetique.
I already follow the instructions and restart the vue-strofront.

Hello @kipotlea , we haven't tested with Vue Storefront 1.9.0-rc.2.
If you'd like to use our theme today it'd be best to use the stable release of 1.8.3, or wait for 1.9.0 to be come stable so that we can adjust our theme's compatibility.

Thanks @youanden


chore: Fix test

Description

Rollback / Rollforward Procedure

[ ] Roll Forward
[ ] Roll Back

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


User can log in with GitHub

Requirements

[x] User is able to log in through GitHub
[x] When the user is not logged in, they see a link to "log in"
[x] Logging in directs to home screen
[x] Create a login template, no styling
[x] Will create a separate ticket for login via Google and login via username/password since there is some service-specific setup and I'm all about tiny tickets these days -- see #30 and #31

Resources

Adding Social Authentication to Django
Uses django-allauth

Mostly posting to get the GitHub link for this screenshot:


Passing CoroutineScope to Destination/ViewModel

Hello!
I've read through the documentation and it seems that the navigation arguments are only meant for simple data (types). I need to pass a CoroutineScope to my ViewModel. It looks like the delegate functionality is the way to go. But since it depends on SavedStateHandle, I cannot pass down the scope.
The problem arises when using a ViewModel inside a BottomSheet. The sheet has a save button that launches the database transaction and pops the navigation stack. Since the ViewModel gets destroyed, the database transaction doesn't fully happen.
I solved it by using DI and providing an application-wide CoroutineScope. but I'd rather somehow pass down the parents scope to the BottomSheet or its ViewModel.

That means you’d pass a scope from the place you call NavHost. But this is the only place you can know for sure is run before your bottom sheet.
Because the app process can be restored and start immediately on the bottom sheet screen. So you wouldn’t have a scope from the previous screen in this case.
The alternative is to make a nested navigation graph containing all screens you want to scope your CoroutineScope in and use a ViewModel ties to that nested nav graph instead. This way your coroutine scope from that VM will leave longer than the bottom sheet screen.

Hey @mainrs ,
I’ll close this since no new replies were added, but still let me know below in the comments if you managed to make it work 🙂


Move to IETF HTTP/2 mapping

It appears that the HTTP/2 implementation implements an earlier version of quic's HTTP mapping. Was curious what the timeline/blockers are for moving to the IETF mapping?

The IETF mapping is still being specified.


Create Schema instence

Iam trying to create Schema that allow me to include the require relations for a specific model dynamically inside json respond ,so I create class which extend from the SchemaProvider and try to create an instance from it inside   schema class  contractor for that model .but I got this fault "Schema is not registered for a resource at path ''. any suggestion to solve this problem I will be great full

Closing this as I believe my comment above is the solution and haven't heard anything since!


RFE: Support pre-generation of all secrets and don't allow their movement outside of the ceph hosts

Hi,
So I am looking at using ceph-ansible to deploy ceph clusters in a highly secure environment.
As part of our standard operating procedure for that environment, we have a secret management system that can generate secrets on all hosts as we require.
We would like to have the ability for ceph-ansible to support those existing keys (or even allow us greater control in specifying them as ansible variables), but most importantly, for maximum security, those keys must never get moved outside of the hosts they are on.
At the moment a lot of the ceph-ansible code just kind of lazily operates on dragging everything and anything back into a local fetch directory (a lot of the fetch calls are wildcarded so they take everything weather it is needed or not). This really isn't a great way of doing things security wise.
Cleaning this up to operate better would allow us to allow ceph-ansible to also operate cleaner with secret management systems such as hashicorp vault, and FreeIPA/dogtag. Which I think would be a very huge win for the project.
Regards,
Graeme

Perhaps replacing fetch calls with slurp
https://docs.ansible.com/ansible/2.6/modules/slurp_module.html
would be a good first step in removing the use of fetch directory

fixed by https://github.com/ceph/ceph-ansible/pull/4472/commits/812bd63ef48c8a980b26e7a971389465a8366316


chore: "@sap/cds(-dk)": ">=7 || ^8.0.0-beta"

We'll leave this change in this branch for testing and wait for the stable release which would work out automatically.


Add FormDataEvent

Oh, and the FormData keys are split across XHR and Fetch, but FormData is not limited to those. Maybe that's worth a re-look at some point. The spec/docs for FormDataEvent are even clearer that this is not limited to XHR/Fetch, so I put it with forms.

Erp, wrong base.


Feature request: Add support for blink.cmp

Is it possible to add support for blink.cmp? https://github.com/Saghen/blink.cmp
Thanks!

+1
Just switched to blink.cmp. I've tried to setup using the compatibility layer blink.compat repo but without any success. I'd really appreciate the support for blink.

I have also tried to set this up like @souavds mentioned, also without success. I'm not really read up on how the compatibility layer works, so I'm not sure if this plugin is compatible right off the bat. But I would be very curious to see if/how this can be done if anyone manages to get it working.

I have not tried using blink.compat, by for those that still want/need copilot to function, you could do something like:
copilot:
{
	"zbirenbaum/copilot.lua",
	lazy = true,
	cmd = "Copilot",
	event = "InsertEnter",
	opts = {
		panel = { enabled = false },
		suggestion = {
			auto_trigger = true,
			keymap = {
				accept = "<TAB>",
				accept_word = "<C-w>",
				accept_line = "<C-l>",
				next = "<C-j>",
				prev = "<C-k>",
				dismiss = "<ESC>",
			},
		},
	},
}

And I make sure blink keymaps don't interfere blink..
blink-cmp:
require("blink.cmp").setup({
			keymap = {
				["<C-y>"] = { "accept", "fallback" },
				["<C-n>"] = { "select_next", "fallback" },
				["<C-p>"] = { "select_prev", "fallback" },
			},
})

It's not perfect but  at least you get copilot completion.

+1
blink.cmp seems so much faster than nvim-cmp and doesn't lag and I'd love to have native copilot support for it.


Leds issue | Release 1.5.0

Hi,
When compile this example -> https://docs.creatordev.io/ci40/guides/creating-applications/#method-3-gcc-on-ci40 ; I received the following error related with the leds:
root@myCi40:~/test# make
gcc main.c -lletmecreate_core -lletmecreate_click
/tmp/ccalClFo.o: In function `main':
main.c:(.text+0x20): undefined reference to `led_init'
main.c:(.text+0x2c): undefined reference to `led_init'
main.c:(.text+0x48): undefined reference to `led_switch_on'
main.c:(.text+0x54): undefined reference to `led_switch_on'
main.c:(.text+0x84): undefined reference to `led_switch_off'
main.c:(.text+0x90): undefined reference to `led_switch_off'
main.c:(.text+0xe0): undefined reference to `led_release'
main.c:(.text+0xec): undefined reference to `led_release'
collect2: error: ld returned 1 exit status
make: *** [Makefile:2: all] Error 1

The used version of LetMeCreate is 1.5.0 . This example works on release 1.3.0 .
Cheers,
Hugo

It seems that shared libraries on the target do not have any symbols. During stripping, everything gets removed.

Issue raised in wrong repo?  Should have been added in LetMeCreate repo?

@nikhil-zinjurde-imgtec  No, I think this issue could be left here.
It seems that when stripping the shared library, only the dyn sym table is left which means that pyletmecreate examples or letmecreate examples can still run correctly but it is not possible to compile on Ci40. Compiling on the Ci40 using static libraries works. I ping @HugoSilvaSantos to update the docs on docs.creatordev.io


Roll engine 8cc49cac3b4a..cc2ec365b738 (5 commits)

https://github.com/flutter/engine/compare/8cc49cac3b4a...cc2ec365b738
git log 8cc49cac3b4a..cc2ec365b738 --no-merges --oneline
cc2ec365b Roll src/third_party/skia 5deda2e93055..48ee86f818fb (3 commits) (flutter/engine#6585)
31557d0c7 Roll src/third_party/skia 928db927f7fc..5deda2e93055 (6 commits) (flutter/engine#6584)
607c05c93 Run all supported host unit tests on Cirrus. (flutter/engine#6575)
979de076b Add a CountDownLatch to fml with tests. (flutter/engine#6574)
705738fd7 Roll src/third_party/skia 3a0c66da5fc2..928db927f7fc (5 commits) (flutter/engine#6573)
The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

@liyuqian : New roll has been created by https://autoroll.skia.org/r/flutter-engine-flutter-autoroll

Auto-roller completed checks. About to merge.


Update for New DevOps UI

Would be good to have this for the new DevOps UI.  I no longer have the delete repo option.

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

ID: b03af1d9-4eeb-ac18-d517-a0a44a2478be
Version Independent ID: 842691c8-8c41-facf-2cff-03542262f2e5
Content: Delete a Git repo from your project - Azure Repos
Content Source: docs/repos/git/delete-existing-repo.md
Product: devops
GitHub Login: @steved0x
Microsoft Alias: sdanie

@CastleArg I have got this on my backlog to complete, in the meantime were you able to find it? In the new UI, go to Repos, Files, and click the name of the repo to get the drop-down menu, and choose Manage repositories.

Then, select the name of the repository, click the ... menu, and choose Delete repository.

I am going to update the whole section of articles for managing repos shortly and get these screenshots updated. Thanks for the feedback and sorry that you ran into trouble.
Steve


SyntaxError: 'return' with argument inside generator

Hi, I was using your code and I tried to run python stepwavetest.py when it gave me the error

File "stepwavetest.py", line 246
yield self.steppinmask, 0, 0
SyntaxError: 'return' with argument inside generator

I'm not really sure what to do now because I looked online and it told me to add a return after every yield but I don't think that is right.
Thanks,

That's bizarre - you are running this with python3?

I'm not sure, how can I check if I am? Thanks for the help.

how are you running the software?
Something like python3 stepwavetest.py?
Not python stepwavetest.py
- this defaults to python v2

Ok I did

Ok so what I did was  python3 in my home directory which I then got what you said before. Then I did import stepwavetest.py and I got this error.

Traceback (most recent call last):
File "", line 1, in
ImportError: No module named 'stepwavetest'

To be honest, I'm actually unsure how to run your program so that it can drive my stepper motors as I'm relatively new to all of this command line stuff. If you could help me out that would be great.

my mistake, it should be

import stepwavetest
NOT

import stepwavetest.py

Have you got pigpio installed and running?

Thanks for the help! I have pigpio running and I did import stepwavetest and at least to me nothing happened.

import stepwavetest

I'm not really sure what to run so that the stepper motors can run with your code. I'm sorry if I'm being annoying to you, I really am over my head with this kind of stuff. Thanks again for your time!

For pigpio I did sudo pigpiod

That's OK, good to help you get started.
You've not said what kit you actually got and how it's all hooked up - that would be useful so I don't need ask a lot of very basic questions.
You need to check that the pin numbers as in line 602/3 are right, and if everything else is setup the runmotors method with the right parameters should get the motor moving.
the parameters (apart from the motor name) are explained in the pulser method around line 206.
probably reduce the values of startsr and maxsr until you know how fast your motors can go

Sorry about that I forgot to tell you how I hooked things up.
So I have two DRV8825 stepper driver chips running two NEMA 17 stepper motors on a Raspberry Pi 3B. Both of them I used the minimum wiring diagram found on Pololu.
For one of the drivers I have hooked up the STEP pin with pin 16, and DIR with pin 18. For the other I have the STEP pin with pin 15, and DIR with pin 13. These are all GPIO board, not BCM pins.
I looked at lines 602/3 and realized that I didn't change them at all! However, I was wondering if it was necessary to connect to the ENABLE pin with the board, and also if I could get away with only using full steps and not using step levels.
Just one more question, after I fix the code so that it works with my pi, do I have to run the code by doing python3 then typing line by line the example you gave us at the bottom of the code?
Thanks for your help, this has been a great learning experience for me.

Enable if not connected should mean the driver chip always delivers current. Only connect it to pi if you want to be able to turn it off.
Without the mode mode pins connected it looks like it will default to full steps. Full steps are fine, but tend to be noisy, and some steppers will go faster / are less likely to miss steps in 1/2 step mode (Both types of motor I've tried are better in 1/2 step mode. The other modes can be quieter at lower speeds.
The code is setup like that so you can tweak the parameters to find the best settings for a motor - fastest speed, best ramp rate etc.
Then you can write your own python file that replaces makeagents and then calls runmotors with the parameters to match whatever you want to do.

Ok thanks for the help, just one final question, are you using GPIO BOARD or are you using GPIO BCM for the pin numbers.

Also if it is BCM, where can I change it to BOARD?

Had to  look that up - they're BCM numbers as that is what pigpio ( which is what this uses for low level driving) uses. Just use the info here to convert the numbers.

btw - if you want to run steppers fast the gpio daemon is best run at high priority.

sudo pigpiod -c 256

OK thanks I have the code up and running and now the motors are running, but it doesn't turn in one direction, instead, it twitches back and forth a lot. Also I get this error along with running the code.

Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
self.run()
File "/usr/lib/python3.5/threading.py", line 862, in run
self._target(*self._args, **self._kwargs)
File "/home/pi/pisteppers/stepwavetest.py", line 333, in agentRun
super().agentRun()
File "/home/pi/pisteppers/stepwavetest.py", line 65, in agentRun
inMsgMeth, inMsgKwargs = self.inq.get(block=True, timeout=nexttimerdue-time.time())
File "/usr/lib/python3.5/queue.py", line 166, in get
raise ValueError("'timeout' must be a non-negative number")
ValueError: 'timeout' must be a non-negative number

I'm sorry, I don't know what I am doing wrong.

Ah! at least it is trying! That is a good sign. Couple of things to check:
have you got the the right pin for step and direction?
It might your pi has got too much to run and the process running the motors is not getting enough CPU.
How long does has it run for when you get the message?
Which type of raspberry pi are you using? Which version of Raspbian are you using? * and is the lite version of the full version?*
run a second shell and use

sudo top
while it is running to see how busy the machine is.

Also you could try running it a lot slower to see if it is loosing sync for some reason.
try with startsr at 100 and maxsr at 200 just to see if it steps properly.
Are you using a power supply with the full voltage? What voltage power supply are you using?
Have you set the current limit potentiometer?

Ok so I checked the pins and all seem fine, I also run sudo top and saw that pigpiod is using around 5% of the CPU power which looks fine.
I'm using a Raspberry Pi 3B with the newest full version of Raspbian Stretch.
I tried running it with startsr at 10 and maxsr at 100 and the same problem occurs.
My power supply can produce 30 volts and 500mA and I have set the current limit potentiometer.
Also the second I run the code it shows the stepper control and then the error comes up.
One final problem is that while in my code I want both motors to run, right now only one motor is running and the other doesn't move.

I'll do a quick fix to avoid the crash (hopefully in a failsafe way)
I've just run this again on a Pi 2B and it is all working OK

OK I've updated stepwavetest.py so it should failsafe and avoid the crash. I suspect other processes are delaying the python code at a bad time!
If you used git to download, just do

get fetch origin
or update it - I've replaced line 65 with 5 new lines.

Check both motors before running python, but with power on. They should both be very stiff or impossible to move.
Try running the motors 1 at a time and see if they both behave the same way.
It may be that these motors don't like starting in full step mode, you might have to run them in 1/2 step mode - use a pullup on the mode0 pin.

Success! Both motors are running now at around 1000 maxsr. Thank you for all your help in this process, I have definitely learned a lot.


X-RateLimit-Limit, Remaining and Reset timing

Any way to send X headers in every call response to tell clients about their limitation? As implemented in asp.core version
"X-RateLimit-Limit": "5000",
"X-RateLimit-Remaining": "4966",
"X-RateLimit-Reset": "1372700873"

I'd love to see this added as well.

@vickyrathee I implemented a custom version of this by overriding the SendAsync method in a custom throttle handler. That looks like this:
 config.MessageHandlers.Add(new CustomThrottlingHandler() //be sure to use the custom handler!             {                 Policy = ThrottlePolicy.FromStore(new PolicyConfigurationProvider()),                 Repository = new CacheRepository()             });
`
public class CustomThrottlingHandler : ThrottlingHandler
{
private const string ANONYMOUS_IDENTITY_KEY = "Anonymous";
    protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
    {
        var result = await base.SendAsync(request, cancellationToken);

        //if user isn't anonymous then get the remaining counts
        var identity = SetIdentity(request);
        if (identity?.ClientKey != ANONYMOUS_IDENTITY_KEY)
        {
            //grab the users identity key and current limit to include in the response header
            var identityKey = base.ComputeThrottleKey(identity, RateLimitPeriod.Hour);
            var currentLimit = base.Repository.FirstOrDefault(identityKey);
            if (currentLimit != null)
            {
                var rateLimit = base.Policy.Rates[RateLimitPeriod.Hour];
                var reset = (int)(currentLimit.Value.Timestamp.AddHours(1).Subtract(new System.DateTime(1970, 1, 1))).TotalSeconds; //unix timestamp
                result.Headers.Add("X-RateLimit-Limit", rateLimit.ToString());
                result.Headers.Add("X-RateLimit-Remaining", (rateLimit - currentLimit.Value.TotalRequests).ToString());
                result.Headers.Add("X-RateLimit-Reset", reset.ToString());
            }
        }

        return result;
    }

    protected override RequestIdentity SetIdentity(HttpRequestMessage request)
    {
        return new RequestIdentity()
        {
            ClientKey = request.Headers.Contains("Authorization")
                ? request.Headers.GetValues("Authorization").FirstOrDefault()
                : ANONYMOUS_IDENTITY_KEY,
            ClientIp = base.GetClientIp(request).ToString(),
            Endpoint = request.RequestUri.AbsolutePath.ToLowerInvariant()
        };
    }

`
Two things to note: 1) This is assuming you're only limiting on an hourly period. 2) It also allows for anonymous users to interact with the API and not get a limit back (may not be useful for every API).


Investigate to cancel a running save participant when saving again

@jrieken I was not so sure about this line: https://github.com/microsoft/vscode/compare/ben/90509?expand=1#diff-e434c7570ee4d27132355f82ecd18145L397
This PR fixes #90509

Running Save Participants keeps running forever for me! What do I do

Started running into this today on php files... nothing has changed... no new extensions the files are the same and all of a sudden files stopped saving for me today...


[twitch] VODs subtitle (chat) failed to download (Error 401: Unauthorized) when using --cookies argument

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2020.12.14
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v', '--cookies', 'D:\\Twitch\\twitch.tv_cookies.txt', '--all-subs', '--skip-download', 'https://www.twitch.tv/juicylucy72/videos?filter=archives&sort=time']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2020.12.14
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: ffmpeg 4.3.1-2020-11-19-full_build-www.gyan.dev, ffprobe 4.3.1-2020-11-19-full_build-www.gyan.dev
[debug] Proxy map: {}
[download] Downloading playlist: juicylucy72 - Past Broadcasts sorted by Date
[TwitchVideos] juicylucy72: Downloading Videos GraphQL page 1
[TwitchVideos] playlist juicylucy72 - Past Broadcasts sorted by Date: Downloading 15 videos
[download] Downloading video 1 of 15
[twitch:vod] 842712286: Downloading video info JSON
[twitch:vod] 842712286: Downloading vod access token
[twitch:vod] 842712286: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 힐링노래방 YES chillin' singing Stream-v842712286.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 2 of 15
[twitch:vod] 840509445: Downloading video info JSON
[twitch:vod] 840509445: Downloading vod access token
[twitch:vod] 840509445: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 힐링노래방 YES chillin' singing Stream-v840509445.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 3 of 15
[twitch:vod] 839383244: Downloading video info JSON
[twitch:vod] 839383244: Downloading vod access token
[twitch:vod] 839383244: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] YES short PC Stream-v839383244.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 4 of 15
[twitch:vod] 839215211: Downloading video info JSON
[twitch:vod] 839215211: Downloading vod access token
[twitch:vod] 839215211: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] Dance practice stream-v839215211.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 5 of 15
[twitch:vod] 839182139: Downloading video info JSON
[twitch:vod] 839182139: Downloading vod access token
[twitch:vod] 839182139: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 테스트! test!-v839182139.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 6 of 15
[twitch:vod] 837028668: Downloading video info JSON
[twitch:vod] 837028668: Downloading vod access token
[twitch:vod] 837028668: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 12시까지 짧뱅! YES short Singing Stream! -v837028668.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 7 of 15
[twitch:vod] 835931201: Downloading video info JSON
[twitch:vod] 835931201: Downloading vod access token
[twitch:vod] 835931201: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 12시까지 짧뱅! YES short Singing Stream! -v835931201.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 8 of 15
[twitch:vod] 834658483: Downloading video info JSON
[twitch:vod] 834658483: Downloading vod access token
[twitch:vod] 834658483: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 오늘도 노래뱅! YES Singing Stream!-v834658483.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 9 of 15
[twitch:vod] 833629621: Downloading video info JSON
[twitch:vod] 833629621: Downloading vod access token
[twitch:vod] 833629621: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 새벽노래방-3- Singing Lucy! -v833629621.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 10 of 15
[twitch:vod] 831201980: Downloading video info JSON
[twitch:vod] 831201980: Downloading vod access token
[twitch:vod] 831201980: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 새벽노래방-3- Singing Lucy! -v831201980.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 11 of 15
[twitch:vod] 829906936: Downloading video info JSON
[twitch:vod] 829906936: Downloading vod access token
[twitch:vod] 829906936: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 오늘도 노래뱅! YES Singing Stream!-v829906936.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 12 of 15
[twitch:vod] 829850048: Downloading video info JSON
[twitch:vod] 829850048: Downloading vod access token
[twitch:vod] 829850048: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] ! Yes Stream!-v829850048.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 13 of 15
[twitch:vod] 828808045: Downloading video info JSON
[twitch:vod] 828808045: Downloading vod access token
[twitch:vod] 828808045: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] ! Yes Stream!-v828808045.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 14 of 15
[twitch:vod] 828753355: Downloading video info JSON
[twitch:vod] 828753355: Downloading vod access token
[twitch:vod] 828753355: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] ! Yes Stream!-v828753355.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Downloading video 15 of 15
[twitch:vod] 827652373: Downloading video info JSON
[twitch:vod] 827652373: Downloading vod access token
[twitch:vod] 827652373: Downloading m3u8 information
[debug] Default format spec: bestvideo+bestaudio/best
[info] Writing video subtitles to: [KOR _ ENG] 루씨! 늦어서 미안..!-v827652373.rechat.json
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
[download] Finished downloading playlist: juicylucy72 - Past Broadcasts sorted by Date

Description

Downloading subtitles (the chat) for Twitch video-on-demands failed when using --cookies "cookies.txt" argument with this error:
WARNING: Unable to download subtitle for "rechat": Unable to download webpage: HTTP Error 401: Unauthorized (caused by HTTPError())

It works without the --cookies argument for public VODs, but then I can't download subscribers-only VODs. Without --cookies, I would get ERROR: Failed to download m3u8 information: HTTP Error 403: Forbidden for subs-only VODs.

I don't really familiar with youtube-dl code, but it seems the Twitch rechat endpoint doesn't need any cookies at all to work. So maybe, we need to change the behaviour to download the rechat file without cookies or replicate the proper authentication for the endpoint like the way Twitch web access them.

https://github.com/ytdl-org/youtube-dl/issues/12266#issuecomment-465359916

https://github.com/ytdl-org/youtube-dl/issues/12266#issuecomment-465359916

it doesn't download chat (only first 30 secs)

I think that's a different issue.
Youtube-dl can download the chat in .rechat.json format. You can try it yourself with clips or public VODs and look at the .description.json file (you need to use some flags to activate the description and chat file) there is rechat URL for the rechat file.
This issue is completely different from yours. We can download chat (subs) from public videos, but won't work with sub-only VODs.
The problem is, twitch endpoint refuses the request from youtube-dl because of the way ytdl handles the rechat URL when we using cookies.

it doesn't download chat (only first 30 secs)

I think that's a different issue.
Youtube-dl can download the chat in .rechat.json format. You can try it yourself with clips or public VODs and look at the .description.json file (you need to use some flags to activate the description and chat file) there is rechat URL for the rechat file.
This issue is completely different from yours. We can download chat (subs) from public videos, but won't work with sub-only VODs.
The problem is, twitch endpoint refuses the request from youtube-dl because of the way ytdl handles the rechat URL when we using cookies.

I think the problem is that on https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/extractor/twitch.py#L362, the Client-ID header is put into the URL query, but Twitch requires it to be HTTP header. The correct dict should be something like
                'rechat': [{
                    'url': f'https://api.twitch.tv/v5/videos/{vod_id}/comments',
                    'headers': {
                        'client_id': self._CLIENT_ID
                    },
                    'ext': 'json',
                }],


Update the infra/core modules to AVM modules

Update the infra/core modules to AVM modules for todo-java-mongo.
1. Modules not replaced by AVM

Cosmos DB: Missing the feature Microsoft.KeyVault/vaults/secrets and the output connectionStringKey, so we cannot store the connection string into keyvault.
Monitoring (app insights) : Missing the output applicationInsights.properties.ConnectionString.
APIM: Missing the feature Microsoft.ApiManagement/service/loggers and the output apimService.properties.gatewayUrl.

2. Modules replaced by AVM

App Service
Key Vault
App Service Plan

@jongio for notification.

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Please try to make this work without any modules from infra/core.  I want to see what all the gaps look like

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

@jongio We have done this without any modules from infra/core.
Three bicep files are now added under infra/bicep/app for the following reasons:

apim-api-settings.bicep: The avm file missing features Microsoft.ApiManagement/service/loggers and Microsoft.ApiManagement/service/apis/diagnostics.
keyvault-secret.bicep: Set the connectionStringKey of Cosmos DB into the secret in the keyvault.
applicationinsights-dashboard.bicep: There is no applicationinsights-dashboard resource module in AVM.

Besides, remove apim service sku config. For Consumption sku type capacity must be specified as 0, but in AVM , only 1 and 2 are allowed.

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

@jongio There is a question here that we need to confirm with you.
For AVM’s APIM module, compared with the files in infra/core, only the Microsoft.ApiManagement/service/loggers function is missing.
However, compared with the infra/app/apim-api.bicep file currently used by this todo-java-mongo template, the Microsoft.ApiManagement/service/apis/diagnostics function is also missing.
Regarding this issue, do you think it is necessary to add the missing feature Microsoft.ApiManagement/service/apis/diagnostics to the issue https://github.com/Azure/bicep-registry-modules/issues/1124?

@jongio There is a question here that we need to confirm with you. For AVM’s APIM module, compared with the files in infra/core, only the Microsoft.ApiManagement/service/loggers function is missing. However, compared with the infra/app/apim-api.bicep file currently used by this todo-java-mongo template, the Microsoft.ApiManagement/service/apis/diagnostics function is also missing.
Regarding this issue, do you think it is necessary to add the missing feature Microsoft.ApiManagement/service/apis/diagnostics to the issue Azure/bicep-registry-modules#1124?

As a general rule, anything in infra/core that is used by any azd template should be available in AVM.  So, in this case yes, we should make that request.  Thank you.

@jongio There is a question here that we need to confirm with you. For AVM’s APIM module, compared with the files in infra/core, only the Microsoft.ApiManagement/service/loggers function is missing. However, compared with the infra/app/apim-api.bicep file currently used by this todo-java-mongo template, the Microsoft.ApiManagement/service/apis/diagnostics function is also missing.
Regarding this issue, do you think it is necessary to add the missing feature Microsoft.ApiManagement/service/apis/diagnostics to the issue Azure/bicep-registry-modules#1124?

As a general rule, anything in infra/core that is used by any azd template should be available in AVM. So, in this case yes, we should make that request. Thank you.

The feature Microsoft.ApiManagement/service/apis/diagnostics is not in the infra/core folder, but in the infra/app/apim-api.bicep file in this todo-java-mongo template. In this case, should this feature be added to AVM?

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

@jongio There is a question here that we need to confirm with you. For AVM’s APIM module, compared with the files in infra/core, only the Microsoft.ApiManagement/service/loggers function is missing. However, compared with the infra/app/apim-api.bicep file currently used by this todo-java-mongo template, the Microsoft.ApiManagement/service/apis/diagnostics function is also missing.
Regarding this issue, do you think it is necessary to add the missing feature Microsoft.ApiManagement/service/apis/diagnostics to the issue Azure/bicep-registry-modules#1124?

As a general rule, anything in infra/core that is used by any azd template should be available in AVM. So, in this case yes, we should make that request. Thank you.

The feature Microsoft.ApiManagement/service/apis/diagnostics is not in the infra/core folder, but in the infra/app/apim-api.bicep file in this todo-java-mongo template. In this case, should this feature be added to AVM?

The RPs used in apim-api.bicep should have equivalent AVM modules.
For example,
We use Microsoft.ApiManagement/service/apis/policies here: https://github.com/Azure-Samples/todo-java-mongo/blob/main/infra/app/apim-api.bicep#L47
That type should be available in AVM for us to use.
We shouldn't get all of apim-api.bicep into AVM because that is app specific.  But the RP types it uses should be available in AVM.

@jongio There is a question here that we need to confirm with you. For AVM’s APIM module, compared with the files in infra/core, only the Microsoft.ApiManagement/service/loggers function is missing. However, compared with the infra/app/apim-api.bicep file currently used by this todo-java-mongo template, the Microsoft.ApiManagement/service/apis/diagnostics function is also missing.
Regarding this issue, do you think it is necessary to add the missing feature Microsoft.ApiManagement/service/apis/diagnostics to the issue Azure/bicep-registry-modules#1124?

As a general rule, anything in infra/core that is used by any azd template should be available in AVM. So, in this case yes, we should make that request. Thank you.

The feature Microsoft.ApiManagement/service/apis/diagnostics is not in the infra/core folder, but in the infra/app/apim-api.bicep file in this todo-java-mongo template. In this case, should this feature be added to AVM?

The RPs used in apim-api.bicep should have equivalent AVM modules.
For example, We use Microsoft.ApiManagement/service/apis/policies here: https://github.com/Azure-Samples/todo-java-mongo/blob/main/infra/app/apim-api.bicep#L47
That type should be available in AVM for us to use.
We shouldn't get all of apim-api.bicep into AVM because that is app specific. But the RP types it uses should be available in AVM.

Ok, I have added Microsoft.ApiManagement/service/apis/diagnostics fearture to AVM issue https://github.com/Azure/bicep-registry-modules/issues/1124. Thank you.

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

@Menghua1 - This Azure/bicep-registry-modules#632 has been implemented. Can you please have a look?

Ok, we have tested it without any problems and in this PR we have updated the code to implement Azure/bicep-registry-modules#632 this way to set keyvault secrets for connection strings.

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes

Repoman Generation Results
Repoman pushed changes to remotes for the following projects:
Project: todo-java-mongo
Remote: azure-samples-staging
Branch: pr/3464
You can initialize this project with:
azd init -t Azure-Samples/todo-java-mongo -b pr/3464

View Changes | Compare Changes


SpaServices Webpack Dev Middleware - optional storing files to disk

Currently when you use Webpack Dev Middleware, you use both in memory compilation of typescript and also stores copy of generated files to disk.
It would be great to have this configurable via options.
My reason is simple, if you don`t debug your application during development, it is just spamming your disk with many files for each change.
Thank you

it is just spamming your disk with many files for each change

It's not creating any extra files, is it? It should only be overwriting the previously-built files. If you find some scenario where it does write extra files to disk, please let me know how to reproduce that situation.
Writing the files to disk is necessary for the server-side prerender to be updated correctly, because that's produced by a running Node instance that wouldn't know anything's changed unless it could observe the file on disk being written.
Writing the files to disk is less essential to as far as client-side rendering is concerned (because we're serving the compiled files out of memory anyway), but there is a situation where it is necessary: IDE-based debugging. If you're trying to use VS/VSCode to debug, then it will only work properly if your .js files on disk match up with what has been served to the browser.
Since things will go wrong if the files aren't written to disk, I'm not sure it's a good idea to even have an option to disable it. It would create the possibility of subtle, unexpected problems, that wouldn't be easy for people to debug/fix.
If you can describe any situation where writing the files to disk actually causes a problem (e.g., creating extra unnecessary files), please reopen with details! Otherwise I think we should leave this behaviour as-is.


Forcing copyright action to run on PR

Motivation

Future Work

closing forgot this change will be included in the copyrgiht update chagne


remove unnecessary softmax in prm loss

Two consecutive softmax operations can cause some negative effects, while a normal single softmax would perform better (and won't lead to any crashes; in fact, there is no fundamental difference between one softmax and two softmax operations). As for the specific impact of using two softmax operations, I will explain it in detail in a future blog. Essentially, it functions in a way similar to a temperature coefficient.

some baseline：


AAD credential providers and 'default' pattern

Following authentication patterns as other Azure SDK libraries as outlined in https://azure.github.io/azure-sdk/posts/2020-02-25/defaultazurecredentials.html and comparing implementations to python and .NET auth libraries

Offers bearer token auth across a few mechanisms and outlines a path that applications planning to be deployed to Azure will use the DefaultCredential instance
Have added a few examples with specific choices for use and an example in blob storage using the DefaultCredential
The one I'm the least confident about is the AzureCliCredential implementation. I'm testing on macOS and if comparing to the .NET implementation there is a lot more guards that could be added for other platforms and some assumptions about the cli installed location

Related to #300

That's really impressive! Thank you! :+1:
Do you prefer to keep the history or do you want me to squash it?

Squash it 😊
Represents one logical change anyway and I prefer the cleaner commit history than my incremental working commits

I had to withhold the release because the crate publishing fails because reqwest's issue 971. As soon as it's fixed I will publish the crate and complete the release! Thank you again!

Great that I could help out. I'd love to continue the work here to make it more seamless.
Thank you for the great work on other components in the azure support here for rust

Done https://github.com/MindFlavor/AzureSDKForRust/releases/tag/aad_0.47.0!
Thanks again!


[Bug]: connecting to redis:6379. Name or service not known

Is there an existing issue for the same bug?

[X] I have checked the existing issues.

Branch name
main
Commit ID
ae501c5
Other environment information
No response
Actual behavior
just upload and parse a pdf
Expected behavior
No response
Steps to reproduce
1. Just follow the quick start steps to luanch a local server.
2. Upload a pdf file and parse it, that's it.

Additional information
I found that there is no redis service in docker-compose-base.yml

You could ignore the warning log.
And in latest code and image, I've already remove the default redis configuration so the message will not show again.


Update readme for submission to the Contentful Marketplace

In order to submit our app to the Contentful Marketplace, we have to add links to the following in our readme:

link to our privacy policy: https://adaptagency.com/privacy-policy
Link to this repositories issue queue for opening issues or feature requests: https://github.com/adaptdk/contentful-color-app/issues

140ed3842e175c031e9226ce545983f1200f4162

perfect, thank you


Failed Compilation

Describe the bug
Nightly changed it's API so .chain() is now .sources(). This broke compilation.
To Reproduce
Steps to reproduce the behavior:

cargo +nightly build --bin synth
See error

|
44 |         let mut chain = original.chain().collect::<Vec<_>>();
   |                                  ^^^^^ `&(dyn StdError + 'static)` is not an iterator
   |
  ::: /home/runner/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/error.rs:31:1
   |
31 | pub trait Error: Debug + Display {
   | -------------------------------- doesn't satisfy `(dyn StdError + 'static): Iterator`
   |
   = note: the following trait bounds were not satisfied:
           `&(dyn StdError + 'static): Iterator`
           which is required by `&mut &(dyn StdError + 'static): Iterator`
           `(dyn StdError + 'static): Iterator`
           which is required by `&mut (dyn StdError + 'static): Iterator`

Expected behavior
Successful compilation.
Additional context
This can be fixed easily by changing .chain() to .sources(). I will make a PR fixing this soon.

Is the patch in the related PR valid? I'm seeing this failure now when building synth using Rust 1.65.
   Compiling synth v0.6.8 (/private/tmp/nix-build-synth-0.6.8.drv-0/source/synth)
error[E0599]: `&(dyn StdError + 'static)` is not an iterator
  --> synth/src/error.rs:44:34
   |
44 |         let mut chain = original.chain().collect::<Vec<_>>();
   |                                  ^^^^^ `&(dyn StdError + 'static)` is not an iterator
   |
   = note: the following trait bounds were not satisfied:
           `&(dyn StdError + 'static): Iterator`
           which is required by `&mut &(dyn StdError + 'static): Iterator`
           `(dyn StdError + 'static): Iterator`
           which is required by `&mut (dyn StdError + 'static): Iterator`

The patch in #338 doesn't work for some unrelated reasons. I'm working on another PR, so hopefully this will be fixed in a couple hours.

Looks like this will take longer than expected, thanks to some weird compiler errors

@iamwacko I want to acknowledge and thank you for taking the time to look into this. This is also the first time I learned about synth, and I love what it's aiming to do to facilitate easier testing.

@tjni Synth should work with the latest now.


[test] Move test/attr/attr_availability_transitive_osx_appext.swift to fake version

Keep this test independent of the default deployment target by using a larger version number.
This is a follow-on to https://github.com/swiftlang/swift/pull/76023 for a test that was recently changed

@swift-ci please test

Probably not worth changing now, but did you try specifying an explicit -target that's low enough to keep the test otherwise written as-is? I don't think these tests have been authored with the intent of being sensitive to the default deployment target, they just happened to get away with it and the more surgical change might be to lower the deployment target instead.

Explicit target would work too, and some tests can only be handled that way (e.g. https://github.com/swiftlang/swift/pull/76027 has a bunch), but the dominant style seemed to be using fake versions (e.g. https://github.com/swiftlang/swift/pull/76023), so that's what I stuck with where it was possible.  I don't really care either way, just trying to be consistent with the other availability tests.


Fix index

Related issues

Small fix.
Related to the docs of multi-year #889.

Checklist

[x] I am following the contributing guidelines

[x] Tests are passing

[x] Lint workflow is passing

[x] Docs were updated and workflow is passing

Hi @datejada thanks for adding the missing parts and merging #889. I added the y index for the set (now almost everything has a year index...).
And if you have time, please go through the new docs on the storage, because I'm not sure if I documented them 100% correctly, especially the storage balance https://tulipaenergy.github.io/TulipaEnergyModel.jl/dev/40-formulation/#Constraints-for-Energy-Storage-Assets. I think I got lost a bit by the code of the energy limit.
Thanks!

Thanks for the PR. No worries for the formulation of the storage, it is okay. During the refactor we are cleaning the code so it is easier to follow and then I will change the formulation if needed (which I don't think it is necessary).


Simple Retrieve or Org Browser does not work

Note
Before you submit your issue, make sure that:

You're using the latest version of Salesforce CLI.
Yes
You've searched both open and closed issues for related posts.
Tried
You've used the doctor command to diagnose common issues.
Yes
You understand that GitHub Issues don't adhere to any agreement or SLA.
Yes

If you require immediate assistance, use official channels such as Salesforce Customer Support.

Summary
running sf retrieve start does not retrieve anything.
downloading anything from the org browser does not download anything, but no errors.
Steps To Reproduce
See Video here https://www.loom.com/share/97391521912641a39875a21272162f9f?sid=cf8e0d08-ffc1-4d64-8e7b-a6be12ae47a8
Basic steps

Clone code from main branch on https://github.com/SFDO-Community/Salesforce-Indicators
Create new Scratch org
Deploy code to org
Modify a Lightning Page (eg Lead) to add the component to the page
run sf project retrieve start

sf project retrieve start
(Use `node --trace-warnings ...` to show where the warning was created)
Retrieving v58.0 metadata from<EMAIL_ADDRESS>using the v58.0 SOAP API
Preparing retrieve request... Succeeded
 »   Warning: Nothing retrieved

Open Org Browser
Download newly created Lead Flexipage
No errors,  nothing downloaded.

Expected result
I expect any changes made in the org will be retrieved from the org
Actual result
nothing is retrieved.
Troubleshooting:

Uninstalled CLI
Reinstalled CLI using NPM
I initially had the problem in a Hyperforce Org so I craeted a brand new dev hub and a brand new scratch org not on Hyperforce to test that it is not hyperforce related.
Nothing related to flexipages is in forceignore
source API version is 58.0
My scratch org user, my dev hub, and my windows PC are all on the same timezone
This is a very new PC and the issue was there before I uninstalled the CLI this time around.
I don't think I'm doing anything wrong. I know right clicking on the folder and using the menu command to retrieve will only retrieve files already created. Previously I even tried to create a basic flexi page file and retreive just that using the menu commands and it did not update the file
This works and retrieves all my changes sf project retrieve start --source-dir force-app --target-metadata-dir output --unzip
doing Select Id, MemberIdOrName, MemberName, MemberType, RevisionNum from SourceMember works and retrieves the following (edited for clarity)

_,"Id","MemberIdOrName","MemberName","MemberType","RevisionNum"
[SourceMember],"0MZ6D00000AiwHNWAZ","0M06D000000PcFUSA0","Lead_Record_Page","FlexiPage","288"
[SourceMember],"0MZ6D00000AiwHSWAZ","Lead","Lead","CustomObject","206"
[SourceMember],"0MZ6D00000AiwHhWAJ","m006D000000EdelQAC","Indicator_Bundle_Item.Lead_ID","CustomMetadata","213"
[SourceMember],"0MZ6D00000AiwHXWAZ","m016D00000060hFQAQ","Indicator_Bundle.Lead","CustomMetadata","209"
[SourceMember],"0MZ6D00000AiwHcWAJ","m036D000000EvFhQAK","Indicator_Item.Lead_ID","CustomMetadata","211"

System Information

Powershell Windows 11

{
  "cliVersion"<EMAIL_ADDRESS>  "architecture": "win32-x64",
  "nodeVersion": "node-v20.3.0",
  "osVersion": "Windows_NT 10.0.22621",
  "shell": "cmd.exe",
  "rootPath": "C:\\Users\\JodieM\\AppData\\Roaming\\npm\\node_modules\\@salesforce\\cli",
  "pluginVersions": [
    "@oclif/plugin-autocomplete 2.3.3 (core)",
    "@oclif/plugin-commands 2.2.21 (core)",
    "@oclif/plugin-help 5.2.15 (core)",
    "@oclif/plugin-not-found 2.3.34 (core)",
    "@oclif/plugin-plugins 3.1.8 (core)",
    "@oclif/plugin-search 0.0.21 (core)",
    "@oclif/plugin-update 3.1.28 (core)",
    "@oclif/plugin-version 1.3.8 (core)",
    "@oclif/plugin-warn-if-update-available 2.0.46 (core)",
    "@oclif/plugin-which 2.2.29 (core)",
    "@salesforce/cli 2.3.8 (core)",
    "apex 2.3.9 (core)",
    "auth 2.8.10 (core)",
    "data 2.5.4 (core)",
    "deploy-retrieve 1.16.5 (core)",
    "info 2.6.35 (core)",
    "limits 2.3.27 (core)",
    "login 1.2.23 (core)",
    "org 2.9.28 (core)",
    "schema 2.3.21 (core)",
    "settings 1.4.21 (core)",
    "sobject 0.1.42 (core)",
    "source 2.10.28 (core)",
    "telemetry 2.2.3 (core)",
    "templates 55.5.7 (core)",
    "trust 2.5.1 (core)",
    "user 2.3.27 (core)"
  ]
}

Additional information
doctor command output
{
  "versionDetail": {
    "cliVersion"<EMAIL_ADDRESS>    "architecture": "win32-x64",
    "nodeVersion": "node-v20.3.0",
    "osVersion": "Windows_NT 10.0.22621",
    "shell": "cmd.exe",
    "rootPath": "C:\\Users\\JodieM\\AppData\\Roaming\\npm\\node_modules\\@salesforce\\cli",
    "pluginVersions": [
      "@oclif/plugin-autocomplete 2.3.3 (core)",
      "@oclif/plugin-commands 2.2.21 (core)",
      "@oclif/plugin-help 5.2.15 (core)",
      "@oclif/plugin-not-found 2.3.34 (core)",
      "@oclif/plugin-plugins 3.1.8 (core)",
      "@oclif/plugin-search 0.0.21 (core)",
      "@oclif/plugin-update 3.1.28 (core)",
      "@oclif/plugin-version 1.3.8 (core)",
      "@oclif/plugin-warn-if-update-available 2.0.46 (core)",
      "@oclif/plugin-which 2.2.29 (core)",
      "@salesforce/cli 2.3.8 (core)",
      "apex 2.3.9 (core)",
      "auth 2.8.10 (core)",
      "data 2.5.4 (core)",
      "deploy-retrieve 1.16.5 (core)",
      "info 2.6.35 (core)",
      "limits 2.3.27 (core)",
      "login 1.2.23 (core)",
      "org 2.9.28 (core)",
      "schema 2.3.21 (core)",
      "settings 1.4.21 (core)",
      "sobject 0.1.42 (core)",
      "source 2.10.28 (core)",
      "telemetry 2.2.3 (core)",
      "templates 55.5.7 (core)",
      "trust 2.5.1 (core)",
      "user 2.3.27 (core)"
    ]
  },
  "sfdxEnvVars": [],
  "sfEnvVars": [
    [
      "SF_AUTOUPDATE_DISABLE",
      "true"
    ],
    [
      "SF_DISABLE_AUTOUPDATE",
      "true"
    ],
    [
      "SF_UPDATE_INSTRUCTIONS",
      "Use \"npm update --global @salesforce/cli\" to update npm-based installations."
    ]
  ],
  "cliConfig": {
    "_base": "<EMAIL_ADDRESS>    "debug": 0,
    "topicSeparator": " ",
    "warned": false,
    "commandPermutations": {
      "validPermutations": {}
    },
    "topicPermutations": {
      "validPermutations": {}
    },
    "_commands": {},
    "_topics": {},
    "root": "C:\\Users\\JodieM\\AppData\\Roaming\\npm\\node_modules\\@salesforce\\cli",
    "name": "@salesforce/cli",
    "version": "2.3.8",
    "channel": "stable",
    "valid": true,
    "arch": "x64",
    "platform": "win32",
    "windows": true,
    "bin": "sf",
    "binAliases": [
      "sfdx"
    ],
    "nsisCustomization": "scripts/nsis.nsi",
    "dirname": "sf",
    "flexibleTaxonomy": true,
    "userAgent"<EMAIL_ADDRESS>win32-x64 node-v20.3.0",
    "shell": "cmd.exe",
    "home": "C:\\Users\\JodieM",
    "cacheDir": "C:\\Users\\JodieM\\AppData\\Local\\sf",
    "configDir": "C:\\Users\\JodieM\\AppData\\Local\\sf",
    "dataDir": "C:\\Users\\JodieM\\AppData\\Local\\sf",
    "errlog": "C:\\Users\\JodieM\\AppData\\Local\\sf\\error.log",
    "nodeEngine": ">=14.0.0"
  },
  "pluginSpecificData": {
    "@salesforce/plugin-source": [
      {
        "sourceApiVersion": "58.0",
        "targetDevHubApiVersion": "58.0",
        "targetOrgApiVersion": "58.0"
      }
    ]
  },
  "diagnosticResults": [
    {
      "testName": "salesforcedx plugin not installed",
      "status": "pass"
    },
    {
      "testName": "no linked plugins",
      "status": "pass"
    },
    {
      "testName": "[@salesforce/plugin-source] sourceApiVersion matches apiVersion",
      "status": "pass"
    },
    {
      "testName": "[@salesforce/plugin-source] default target DevHub max apiVersion matches default target org max apiVersion",
      "status": "pass"
    },
    {
      "testName": "[@salesforce/plugin-source] sourceApiVersion matches default target org max apiVersion",
      "status": "pass"
    },
    {
      "testName": "using latest or latest-rc CLI version",
      "status": "pass"
    }
  ],
  "suggestions": [
    "Check https://github.com/forcedotcom/cli/issues for CLI issues posted by the community.",
    "Check http://status.salesforce.com for general Salesforce availability and performance."
  ],
  "logFilePaths": [],
  "commandExitCode": 0
}```

Is there any update or workaround for this issue please? I really need to be able to retrieve something from a scratch org. I am currently setting up my third demo scratch org from scratch due to this issue.

I can tell you that the flow you describe absolutely works from the CLI.  We have many tests that prove this basic functionality before any changes are made to the CLI plugins and libraries.  That said, the video you linked (thank you for that) is mostly from VS Code, so you may want to uninstall VS Code and reinstall.  Before you do that though, what you are seeing may be due to targeting the wrong org.  If you make changes in a different org then pull (or retrieve) it won't find anything.  You can explicitly target the org you want to retrieve from using the CLI (--target-org flag).  If the SourceMember query you are running works, then the pull should also work since it runs that same query to build the manifest that it uses for the retrieve.
It might be worth doing your flow only using the CLI from a shell to see if it reproduces.  If it doesn't, then I'd suspect something is messed up in VS Code extensions.

OK explicitly setting the org worked and I was able to retrieve, however, I've always created my scratch orgs as the default, only usually have one scratch org on the go, and it's showing in the bottom left hand corner of VSCode as the default. I've followed the steps here https://trailhead.salesforce.com/content/learn/projects/quick-start-salesforce-dx/create-and-test-our-scratch-org and their deploy command doesn't set an org explicitly so I wonder what has changed in the new SF commands that you have to set the org?

If you're creating multiple scratch orgs and defaults, it might be replacing 1 default with another.  You can check the default (from the CLI) with sf config list.  It appears that the mix of VS Code actions and CLI commands with multiple scratch orgs might be causing some confusion.  New sf CLI commands work the same way as sfdx CLI commands w.r.t how default orgs are applied.

Here is your problem: https://github.com/SFDO-Community/Salesforce-Indicators/blob/main/.forceignore#L22
You can't forceignore **/unpackaged/** or everything from a retrieve will be ignored because that's the directory within the retrieved zip file that all unpackaged metadata goes.  E.g., `unpackaged/flexipages/Lead_Record_Page
If you comment that entry or remove it, then do your retrieve it works.
Maybe we can add a warning when parsing the .forceignore file if we see something like that.


Action.button creates a button element without type="button"

from discord:
Bery
Hi, I've just noticed that Action.button creates a button element without type="button", is that by design, or a bug?
boxed
By design. Type=button is for input, not button.
Bery
huh?
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#type

type
The default behavior of the button. Possible values are:
submit: The button submits the form data to the server. This is the default if the attribute is not specified for buttons associated with a , or if the attribute is an empty or invalid value.
reset: The button resets all the controls to their initial values, like . (This behavior tends to annoy users.)
button: The button has no default behavior, and does nothing when pressed by default. It can have client-side scripts listen to the element's events, which are triggered when the events occur.

thus inside form.actions, an Action.button acts like submit
boxed
yea well, Action.button should have a post_handler and then you need the type to be submit, which is the default
Bery
but isnt that exactly what Action.submit does then? 🙂
boxed
that's true
Bery
I wanted it for opening a panel (drawer), but I'm thinking I'm gonna use link anyway (so ppl can open it in a new tab)
but still I'm kinda missing the difference between submit and button, if both do submit and both have post handler
also I can't imagine how do you call the right post_handler if button does not have attrs__name=lambda action, **_: action.own_target_marker() 🤔
boxed
oh, thought it did
Bery
so I suppose there is a bug 🙂
but really, I'd let Action.button be attrs__type="button" and Action.submit be attrs__type="submit"
from the point of backward compatibility, I dont think it would break anything, since the post_handler isnt probably called?
boxed
or maybe you could consider Action.button as a shortcut that is sort of an abstract thing
attrs__type=None I think. Cleaner.
Bery
could be, I guess... then if you want a button type=button, you have to specify attrs__type="button" tho... and you have to put it in the docs, because people might not expect it
boxed
on the other hand you do get a <button> which could be what you expect.
It's weird that <button> in html is NOT <button type="button">
Depends on your perspective, if you come from the html side or the python side what you expect probably
Bery
btw as an "abstract" I would kinda expect Action._button + having Action.button for type=button
as I understand it, it is type=button if it is outside of form 🙂
I'm gonna copy-paste this whole convo to an issue, it's up to you what you make of it 🙂
it's not as hard to specify attrs__type="button", but then it would be better to note in the docs

I found another problem with not having type attribute in button:
In JS you cannot use selector button[type="button"], you need to select all buttons and then check .type (at least in FF)
    // this doesn't return them:
    // form.querySelectorAll('input[type="submit"], button[type="submit"]').forEach(function(btn) {
    // you need to do this:
    form.querySelectorAll("input[type=submit], button").forEach(function(btn) {
        if(btn.type !== "submit") {
            return;
        }
        // btn.addEventListener("click", function() {...});
    });

same problem with css
#my_form button {border: 1px solid red}
#my_form button[type="submit"] {border: 1px solid blue}

they get red border, if you don't set type


[FEAT] dec128 math

Removes Int128 Type
Refactor Decimal128 to be backed by a DataArray rather than a LogicalArray
Implements math operations for Decimal
Implements comparison operations for Decimal

@samster25 It looks like between is still broken for decimals
df = (
    daft.from_pydict({"floats": [328.00, 300.00, 299.00]})
    .select(col("floats").cast(daft.DataType.decimal128(5, 2)))
    .where(col('floats').between(300, 400))
    .collect()
)

@samster25 It looks like between is still broken for decimals
df = (
    daft.from_pydict({"floats": [328.00, 300.00, 299.00]})
    .select(col("floats").cast(daft.DataType.decimal128(5, 2)))
    .where(col('floats').between(300, 400))
    .collect()
)

so i think this is actually an issue with the decimal casting. Here's a tiny PR to fix the panic.
https://github.com/Eventual-Inc/Daft/pull/3150


Migrate qualification complete field in application collection

Requirement
Use a new field qualification.qualificationComplete in the application collection instead of qualification.qualificationNotComplete to mark if a candidate has completed the pupillage.
Development plan:

Create a node script.
Query for the application documents which has qualification.qualificationNotComplete property.
Iterate the results.
Update each document with new field qualification.qualificationComplete based on the opposite value of qualification.qualificationNotComplete.
Go through all JAC repositories and use qualification.qualificationComplete instead of qualification.qualificationNotComplete.
(Not sure) Delete qualification.qualificationNotComplete field.

This is a good plan @HalcyonJAC  ✅
Thank you for sharing and seeking review from your peers 👍

I'm ok with leaving the old field in there for existing documents. New documents will be clean; existing documents will be forwards and backwards compatible.

Thank you Warren, I will keep the old field qualification.qualificationNotComplete.


Error when installing chainer without numpy

My pip's log is attached.
When I install numpy first, It is good.
If you guys want to get more information, touch me.
pip_log.txt

Can you try the newest version? When we made chainer 1.6.1, the newest version of numpy was 1.10.  And the newest numpy 1.11 behaves differently on setup.

It's good with latest version of chainer. Thank you.


Edit existing mod: Skyball.OpenDoors

Closes #357
https://github.com/YanWittmann/OpenDoors

This shouldn't exist


Custom parser for 3 level identation elements (list of list of items)

Hi i'm trying to parse with custom parsers as the attached example:
parsers.classes.txt
example.txt
my problem is when i'm trying to parse the children in my "Title" class, i receive this error.
0: We hit the end of the document prematurely. This likely means that some parser "eats" too many elements. Do not attempt to continue parsing.
I'm trying to base my code on the example "Using the XmlDeserializable interface" visible here http://sabre.io/xml/reading/
But maybe i don'understand well what's under the hood, because it fails with 3 custom deserializator when two of them use
    $children = $reader->parseInnerTree();     foreach($children as $child) {       if ($child['value'] instanceof Performance) {         $title->performances[] = $child['value'];       }     }
How can parse a list of list of items?
Thank you so much!
EDIT: oh, the code where i use my custom parser is like that:
      $service = new Sabre\Xml\Service();
      $service->elementMap = array(
        '{}tit_info_venue' => "MyParser\Venue",
        '{}tit_info_title' => "MyParser\Title",
        '{}tit_info_perform' => 'MyParser\Performance',
      )

It seems that the problem is using the KeyValue along the parseInnerTree to get both the subelement that repeat AND the actual value of the node.. at the moment i resolved in this way, removing the keyvalue part.
Is there a better way to do this?
    $children = $reader->parseInnerTree();
    foreach($children as $child) {
      if ($child['value'] instanceof Performance) {
        $title->performances[] = $child['value'];
      }
      else {
        if ($child['name'] == '{}editName') {
          $title->editName = $child['value'];
        }
        if ($child['name'] == '{}sottoCat') {
          $title->sottoCat = $child['value'];
        }
        if ($child['name'] == '{}categoria') {
          $title->categoria = $child['value'];
        }
        if ($child['name'] == '{}numPerf') {
          $title->numPerf = $child['value'];
        }
      }

XMLReader and XMLWriter are streaming readers/writers. The implication is that you can only read once. You can't really rewind.
Your solution seems pretty reasonable though. Basically, if custom parses (like KeyValue) don't get you the information you need, you need to fall back on parseInnerTree (or the PHP XmlReader interface).

Yeah, everything's clear now, thanks so much!


add Known Implementation of Reviews_Duration in GrimoireLab

Adding a description of how to get the Reviews_Duration metric in GrimoireLab.

This issue with detail is that it creates a tight coupling between the metrics definition and a point in time tool release.


Add emacs-filesystem subpackage

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/tools/cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

Add emacs-filesystem subpackage to enable some package builds.
Change Log

Add emacs-filesystem subpackage.

Does this affect the toolchain?

NO
Test Methodology

Pipeline buddy build

Tested both scenarios and both succeeded.