[Bug] Failed to perform the initial theme synchronization. Asset must have a value or attachment since 3.71.3

Please confirm that you have:

[x] Searched existing issues to see if your issue is a duplicate. (If you’ve found a duplicate issue, feel free to add additional information in a comment on it.)
[x] Reproduced the issue in the latest CLI version.

In which of these areas are you experiencing a problem?
Theme
Expected behavior
It's probably a new asset check on the Shopify CLI side, but I think it's a bit too restrictive.
There should be no errors.
Actual behavior
I don't know if it comes from version 3.71.3 or 3.71.x (because on version 3.70.0 I don't reproduce the problem).
I use a bundler tool and so when I run yarn start the js files are modified and the @dev- prefix is added to all the JS files, for example the theme.js file becomes @dev-theme.js.
If I first run yarn start in terminal 1 and then shopify theme dev in terminal 2, I get the following error:
╭─ error ────────────────────────────────────────────────────────────────────────────────╮
│                                                                                │
│  Failed to perform the initial theme synchronization.                                  │
│  Asset must have a value or attachment                                                 │
│                                                                                │
╰────────────────────────────────────────────────────────────────────────────────────────╯

On the other hand, if I reverse the order of execution of the 2 commands, the problem doesn't occur.
Once again, if I go back to Shopify CLI version 3.70.0, the problem isn't there either.
It's probably a new asset check on the Shopify CLI side, but I think it's a bit too restrictive.
Verbose output

Verbose output
$ shopify theme dev -e=dev --path=theme/ --open --verbose
2024-12-05T10:09:59.074Z: Running command theme dev
2024-12-05T10:09:59.080Z: Notifications to show: 0
2024-12-05T10:09:59.082Z: Reading the content of file at theme/shopify.theme.toml...
╭─ info ───────────────────────────────────────────────────────────────╮
│                                                                      │
│  Using applicable flags from dev environment:                        │
│                                                                      │
│    • store: xxx.myshopify.com                       │
│    • theme: xxx                                             │
│    • ignore: !locales/*.json                                         │
│                                                                      │
╰──────────────────────────────────────────────────────────────────────╯

2024-12-05T10:09:59.109Z: Ensuring that the user is authenticated with the Theme API with the following scopes:
[]

2024-12-05T10:09:59.109Z: Ensuring that the user is authenticated with the Admin API with the following scopes for the store xxx.myshopify.com:
[]

2024-12-05T10:09:59.109Z: Getting session store...
2024-12-05T10:09:59.110Z: Validating existing session against the scopes:
[
"openid",
"https://api.shopify.com/auth/shop.admin.graphql",
"https://api.shopify.com/auth/shop.admin.themes",
"https://api.shopify.com/auth/partners.collaborator-relationships.readonly",
"https://api.shopify.com/auth/shop.storefront-renderer.devtools",
"https://api.shopify.com/auth/partners.app.cli.access",
"https://api.shopify.com/auth/destinations.readonly"
]
For applications:
{
"adminApi": {
  "scopes": [],
  "storeFqdn": "xxx.myshopify.com"
}
}

2024-12-05T10:09:59.111Z: Sending Identity Introspection request to URL: https://accounts.shopify.com/oauth/introspection
2024-12-05T10:09:59.111Z: Sending POST request to URL https://accounts.shopify.com/oauth/introspection
With request headers:
- User-Agent: Shopify CLI; v=3.71.3
- Keep-Alive: timeout=30
- Sec-CH-UA-PLATFORM: darwin
- Content-Type: application/json

2024-12-05T10:09:59.338Z: Request to https://accounts.shopify.com/oauth/introspection completed in 226 ms
With response headers:
- cache-control: no-cache, no-store, private, must-revalidate, max-age=0
- content-type: application/json; charset=utf-8
- etag: W/"a7f90fa946ff5d92381f6e631cb4001b"
- server-timing: processing;dur=27, socket_queue;dur=1.55, edge;dur=1.018, util;dur=0.0, cfRequestDuration;dur=150.999784
- x-request-id: 9ec8915a-5252-4bd5-a6ca-be8888fddce8-1733393399

2024-12-05T10:09:59.342Z: The identity token is valid: true
2024-12-05T10:09:59.343Z:
The validation of the token for application/identity completed with the following results:
- It's expired: false
- It's invalid in identity: false

2024-12-05T10:09:59.613Z: Request to https://xxx.myshopify.com/admin/api/unstable/themes.json?fields=id%2Cname%2Crole%2Cprocessing completed in 268 ms
With response headers:
- content-type: application/json; charset=utf-8
- server-timing: processing;dur=54, cfRequestDuration;dur=213.999987
- x-request-id: 5e92a125-473d-4954-8f0d-8c91e91a892e-1733393399

2024-12-05T10:09:59.648Z: Port 9292 is free
2024-12-05T10:09:59.658Z: Reading the content of file at theme/.shopifyignore...
2024-12-05T10:09:59.658Z: Reading the content of file at theme/assets/.gitkeep...
2024-12-05T10:09:59.658Z: Reading the content of file at<EMAIL_ADDRESS>2024-12-05T10:09:59.658Z: Reading the content of file at<EMAIL_ADDRESS>2024-12-05T10:09:59.658Z: Reading the content of file at theme/assets/favicon.svg...
2024-12-05T10:09:59.658Z: Reading the content of file at theme/assets/icon-american-express.svg...
2024-12-05T10:09:59.658Z: Reading the content of file at theme/assets/icon-burger-menu.svg...
2024-12-05T10:09:59.658Z: Reading the content of file at theme/assets/icon-cart.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-chevron-down.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-chevron-left.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-chevron-right.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-chevron-up.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-close.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-facebook.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-instagram.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-linkedin.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-mastercard.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-pause.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-paypal.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-play.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-replay.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-sad.svg...
2024-12-05T10:09:59.659Z: Reading the content of file at theme/assets/icon-search.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/icon-success.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/icon-user.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/icon-visa.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/icon-x.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/icon-youtube.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/loader-black.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/loader-white.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/logo-short.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/assets/logo.svg...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/config/settings_data.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/config/settings_schema.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/layout/theme.liquid...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/locales/en.default.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/locales/en.default.schema.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/locales/fr.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/locales/fr.schema.json...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/sections/before-after.liquid...
2024-12-05T10:09:59.660Z: Reading the content of file at theme/sections/cart-lines.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/cart-minilines.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/cart-upsell.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/editorial.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/footer-group.json...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/footer.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/fullvisual.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/gallery.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/header-group.json...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/header.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/hero.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/instagram.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/main-article.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/main-blog.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/main-cart.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/main-collection.liquid...
2024-12-05T10:09:59.661Z: Reading the content of file at theme/sections/main-customers-account.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-activate_account.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-addresses.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-login.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-order.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-register.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-customers-reset_password.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-page.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-password.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-product.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/main-search.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/newsletter.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/offcanvas.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/overlay-group.json...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/panels.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/predictive-search-results.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/product-miniteaser-upsell.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/product-modal.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/products-tabs.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/products.liquid...
2024-12-05T10:09:59.662Z: Reading the content of file at theme/sections/pushes.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/sections/recently-viewed.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/sections/reinsurance.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/sections/richtext.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/sections/topbar.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/sections/video.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/account-nav.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/article.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/block.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/breadcrumb.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/caesura.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/cart-upsell.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/drawer.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/filters.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/hero.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/icon.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/image.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/jsonld-for-seo.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/megaroll-push.liquid...
2024-12-05T10:09:59.663Z: Reading the content of file at theme/snippets/megaroll.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/minicart.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/modal.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/pagination.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/preload-tags.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-line.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-miniline.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-miniteaser.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-recipient-form.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-sticker.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-teaser.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-variant-options.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/product-variant-selector.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/rte-formatted.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/script-tags.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/social-meta-tags.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/snippets/style-tags.liquid...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/templates/404.json...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/templates/article.json...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/templates/blog.json...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/templates/cart.json...
2024-12-05T10:09:59.664Z: Reading the content of file at theme/templates/collection.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/gift_card.liquid...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/list-collections.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/page.contact.liquid...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/index.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/page.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/page.style-guidelines.liquid...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/password.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/product.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/account.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/search.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/activate_account.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/addresses.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/login.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/login.recover.liquid...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/order.json...
2024-12-05T10:09:59.665Z: Reading the content of file at theme/templates/customers/register.json...
2024-12-05T10:09:59.666Z: Reading the content of file at theme/templates/customers/reset_password.json...
2024-12-05T10:09:59.715Z: Request to https://xxx.myshopify.com/ completed in 89 ms
With response headers:
- content-type: text/html; charset=utf-8
- etag: "cacheable:d8e362df5a4329c5a7443572efb6b031"
- server-timing: processing;dur=16, db;dur=3, db_async;dur=2.074, asn;desc="209166", edge;desc="CDG", country;desc="FR", theme;desc="137738879127", pageType;desc="index", servedBy;desc="rcmd", requestID;desc="b212fa7e-600c-47f4-8355-3c18269f9a12-1733393399", cfRequestDuration;dur=49.999952
- x-request-id: b212fa7e-600c-47f4-8355-3c18269f9a12-1733393399

2024-12-05T10:09:59.715Z: Ensuring that the user is authenticated with the Theme API with the following scopes:
[]

2024-12-05T10:09:59.715Z: Ensuring that the user is authenticated with the Admin API with the following scopes for the store xxx.myshopify.com:
[]

2024-12-05T10:09:59.715Z: Getting session store...
2024-12-05T10:09:59.716Z: Validating existing session against the scopes:
[
"openid",
"https://api.shopify.com/auth/shop.admin.graphql",
"https://api.shopify.com/auth/shop.admin.themes",
"https://api.shopify.com/auth/partners.collaborator-relationships.readonly",
"https://api.shopify.com/auth/shop.storefront-renderer.devtools",
"https://api.shopify.com/auth/partners.app.cli.access",
"https://api.shopify.com/auth/destinations.readonly"
]
For applications:
{
"adminApi": {
  "scopes": [],
  "storeFqdn": "xxx.myshopify.com"
}
}

2024-12-05T10:09:59.716Z: Sending Identity Introspection request to URL: https://accounts.shopify.com/oauth/introspection
2024-12-05T10:09:59.716Z: Sending POST request to URL https://accounts.shopify.com/oauth/introspection
With request headers:
- User-Agent: Shopify CLI; v=3.71.3
- Keep-Alive: timeout=30
- Sec-CH-UA-PLATFORM: darwin
- Content-Type: application/json

2024-12-05T10:09:59.927Z: Request to https://accounts.shopify.com/oauth/introspection completed in 211 ms
With response headers:
- cache-control: no-cache, no-store, private, must-revalidate, max-age=0
- content-type: application/json; charset=utf-8
- etag: W/"a7f90fa946ff5d92381f6e631cb4001b"
- server-timing: processing;dur=27, socket_queue;dur=1.499, edge;dur=1.016, util;dur=0.15, cfRequestDuration;dur=164.999962
- x-request-id: d8c9452b-dfef-4cad-bd5f-289957c5b8c7-1733393399

2024-12-05T10:09:59.930Z: The identity token is valid: true
2024-12-05T10:09:59.930Z:
The validation of the token for application/identity completed with the following results:
- It's expired: false
- It's invalid in identity: false

2024-12-05T10:09:59.931Z: Ensuring that the user is authenticated with the Storefront API with the following scopes:
[]

2024-12-05T10:09:59.931Z: Getting session store...
2024-12-05T10:09:59.932Z: Validating existing session against the scopes:
[
"openid",
"https://api.shopify.com/auth/shop.admin.graphql",
"https://api.shopify.com/auth/shop.admin.themes",
"https://api.shopify.com/auth/partners.collaborator-relationships.readonly",
"https://api.shopify.com/auth/shop.storefront-renderer.devtools",
"https://api.shopify.com/auth/partners.app.cli.access",
"https://api.shopify.com/auth/destinations.readonly"
]
For applications:
{
"storefrontRendererApi": {
  "scopes": []
}
}

2024-12-05T10:09:59.932Z: Sending Identity Introspection request to URL: https://accounts.shopify.com/oauth/introspection
2024-12-05T10:09:59.933Z: Sending POST request to URL https://accounts.shopify.com/oauth/introspection
With request headers:
- User-Agent: Shopify CLI; v=3.71.3
- Keep-Alive: timeout=30
- Sec-CH-UA-PLATFORM: darwin
- Content-Type: application/json

2024-12-05T10:10:00.145Z: Request to https://accounts.shopify.com/oauth/introspection completed in 212 ms
With response headers:
- cache-control: no-cache, no-store, private, must-revalidate, max-age=0
- content-type: application/json; charset=utf-8
- etag: W/"a7f90fa946ff5d92381f6e631cb4001b"
- server-timing: processing;dur=26, socket_queue;dur=1.785, edge;dur=1.015, util;dur=0.0, cfRequestDuration;dur=153.000116
- x-request-id: 4b2b1e0e-df86-496d-a3e7-743e116caf7b-1733393400

2024-12-05T10:10:00.147Z: The identity token is valid: true
2024-12-05T10:10:00.147Z:
The validation of the token for application/identity completed with the following results:
- It's expired: false
- It's invalid in identity: false

2024-12-05T10:10:00.326Z: Request to https://xxx.myshopify.com/?preview_theme_id=131972661399&_fd=0&pb=0 completed in 177 ms
With response headers:
- content-type: text/html; charset=utf-8
- server-timing: processing;dur=12;desc="gc:1", db;dur=5, db_async;dur=2.428, asn;desc="209166", edge;desc="CDG", country;desc="FR", theme;desc="131972661399", pageType;desc="index", servedBy;desc="wzb9", requestID;desc="9c3efea2-eb76-4eb0-8d2a-d7642c5fa553-1733393400", cfRequestDuration;dur=159.999847
- x-request-id: 9c3efea2-eb76-4eb0-8d2a-d7642c5fa553-1733393400

2024-12-05T10:10:00.352Z: Sending "Admin" GraphQL request:
query publicApiVersions {
publicApiVersions {
  handle
  supported
  __typename
}
}

With variables:
{}

With request headers:
- User-Agent: Shopify CLI; v=3.71.3
- Keep-Alive: timeout=30
- Sec-CH-UA-PLATFORM: darwin
- Content-Type: application/json

to https://xxx.myshopify.com/admin/api/unstable/graphql.json
2024-12-05T10:10:00.610Z: Request to https://xxx.myshopify.com/admin/api/unstable/graphql.json completed in 258 ms
With response headers:
- content-type: application/json; charset=utf-8
- server-timing: processing;dur=50, graphql;desc="admin/query/other", cfRequestDuration;dur=206.000090
- x-request-id: aa60bd24-4405-4403-ab4d-b707556fda3f-1733393400

2024-12-05T10:10:00.612Z: Sending "Admin" GraphQL request:
query getThemeFileChecksums($id: ID!, $after: String) {
theme(id: $id) {
  files(first: 250, after: $after) {
    nodes {
      filename
      size
      checksumMd5
      __typename
    }
    userErrors {
      filename
      code
      __typename
    }
    pageInfo {
      hasNextPage
      endCursor
      __typename
    }
    __typename
  }
  __typename
}
}

With variables:
{
"id": "gid://shopify/OnlineStoreTheme/131972661399",
"after": null
}

With request headers:
- User-Agent: Shopify CLI; v=3.71.3
- Keep-Alive: timeout=30
- Sec-CH-UA-PLATFORM: darwin
- Content-Type: application/json

to https://xxx.myshopify.com/admin/api/2024-10/graphql.json
2024-12-05T10:10:00.948Z: Request to https://xxx.myshopify.com/admin/api/2024-10/graphql.json completed in 336 ms
With response headers:
- content-type: application/json; charset=utf-8
- server-timing: processing;dur=95, graphql;desc="admin/query/other", cfRequestDuration;dur=253.000021
- x-request-id: 7704e2f2-39fc-4b53-84fa-2c298f5f66ca-1733393400

2024-12-05T10:10:00.965Z: Ignoring theme file config/settings_data.json via .shopifyignore...
2024-12-05T10:10:00.966Z: Ignoring theme file locales/en.default.json via .shopifyignore...
2024-12-05T10:10:00.966Z: Ignoring theme file locales/fr.json via .shopifyignore...
2024-12-05T10:10:00.968Z: Ignoring theme file sections/footer-group.json via .shopifyignore...
2024-12-05T10:10:00.968Z: Ignoring theme file sections/header-group.json via .shopifyignore...
2024-12-05T10:10:00.973Z: Ignoring theme file sections/overlay-group.json via .shopifyignore...
2024-12-05T10:10:00.982Z: Ignoring theme file templates/404.json via .shopifyignore...
2024-12-05T10:10:00.982Z: Ignoring theme file templates/article.json via .shopifyignore...
2024-12-05T10:10:00.983Z: Ignoring theme file templates/blog.json via .shopifyignore...
2024-12-05T10:10:00.983Z: Ignoring theme file templates/cart.json via .shopifyignore...
2024-12-05T10:10:00.983Z: Ignoring theme file templates/collection.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/list-collections.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/index.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/page.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/password.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/product.json via .shopifyignore...
2024-12-05T10:10:00.984Z: Ignoring theme file templates/search.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/activate_account.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/account.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/login.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/addresses.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/order.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/reset_password.json via .shopifyignore...
2024-12-05T10:10:00.985Z: Ignoring theme file templates/customers/register.json via .shopifyignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/.gitkeep via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/favicon.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-american-express.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-burger-menu.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-cart.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-chevron-down.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-chevron-left.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-chevron-right.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-chevron-up.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-close.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-facebook.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-instagram.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-linkedin.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-mastercard.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-pause.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-play.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-paypal.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-replay.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-sad.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-search.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-success.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-user.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-visa.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-x.svg via --ignore...
2024-12-05T10:10:00.986Z: Ignoring theme file assets/icon-youtube.svg via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file assets/loader-white.svg via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file assets/loader-black.svg via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file assets/logo-short.svg via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file assets/logo.svg via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file config/settings_data.json via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file config/settings_schema.json via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file layout/theme.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/before-after.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/cart-minilines.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/cart-upsell.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/cart-lines.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/footer-group.json via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/editorial.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/footer.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/fullvisual.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/header-group.json via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/gallery.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/header.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/hero.liquid via --ignore...
2024-12-05T10:10:00.987Z: Ignoring theme file sections/instagram.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-article.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-blog.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-cart.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-collection.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-account.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file<EMAIL_ADDRESS>via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-activate_account.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-addresses.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-order.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-register.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-login.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-customers-reset_password.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-page.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-password.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/newsletter.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-product.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/main-search.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/overlay-group.json via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/panels.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/predictive-search-results.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/product-miniteaser-upsell.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/products-tabs.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/product-modal.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/offcanvas.liquid via --ignore...
2024-12-05T10:10:00.988Z: Ignoring theme file sections/products.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/pushes.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/recently-viewed.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/reinsurance.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/topbar.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/video.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/article.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/block.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/account-nav.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/caesura.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file sections/richtext.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/breadcrumb.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/cart-upsell.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/drawer.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/hero.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/filters.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/icon.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/megaroll-push.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/megaroll.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/minicart.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/image.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/jsonld-for-seo.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/pagination.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/preload-tags.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/modal.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/product-miniline.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/product-miniteaser.liquid via --ignore...
2024-12-05T10:10:00.989Z: Ignoring theme file snippets/product-line.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/product-recipient-form.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/product-sticker.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/product-teaser.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/product-variant-options.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/product-variant-selector.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/rte-formatted.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/social-meta-tags.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/script-tags.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file snippets/style-tags.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/404.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/article.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/blog.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/cart.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/collection.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/gift_card.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/list-collections.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/index.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/page.contact.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/page.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/page.style-guidelines.liquid via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/password.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/product.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/search.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/customers/activate_account.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/customers/account.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/customers/login.json via --ignore...
2024-12-05T10:10:00.990Z: Ignoring theme file templates/customers/login.recover.liquid via --ignore...
2024-12-05T10:10:00.991Z: Ignoring theme file templates/customers/addresses.json via --ignore...
2024-12-05T10:10:00.991Z: Ignoring theme file templates/customers/order.json via --ignore...
2024-12-05T10:10:00.991Z: Ignoring theme file templates/customers/reset_password.json via --ignore...
2024-12-05T10:10:00.991Z: Ignoring theme file templates/customers/register.json via --ignore...
2024-12-05T10:10:00.991Z: Ignoring theme file<EMAIL_ADDRESS>via --ignore...
2024-12-05T10:10:00.991Z: Files to be uploaded:
<EMAIL_ADDRESS>-snippets/preload-tags.liquid
-snippets/script-tags.liquid
-snippets/style-tags.liquid
<EMAIL_ADDRESS>2024-12-05T10:10:00.992Z: Uploading the following files:
-snippets/preload-tags.liquid
-snippets/script-tags.liquid
-snippets/style-tags.liquid
<EMAIL_ADDRESS><EMAIL_ADDRESS>╭─ error ──────────────────────────────────────────────────────────────╮
│                                                                      │
│  Failed to perform the initial theme synchronization.                │
│  Asset must have a value or attachment                               │
│                                                                      │
╰──────────────────────────────────────────────────────────────────────╯

error Command failed with exit code 1.

Reproduction steps

yarn start (bundler tool)
shopify theme dev
Error : Failed to perform the initial theme synchronization. Asset must have a value or attachment

Operating System
macOS 14.5
Shopify CLI version (shopify --version)
3.71.3
Shell
No response
Node version (run node -v if you're not sure)
v20.12.2
What language and version are you using in your application?
No response

Same. It's due to there being an empty file somewhere in your theme. It’s fixed in a [preview version of the theme](https://github.com/Shopify/cli/issues/5010). Additionally, we use the vite plugin so our importmap.liquid snippet now has to be removed before running shopify theme dev. Then we can restart our vite server.

@max-techyscouts thank goodness for that simple fix. I was nearly like: "My day is over."


Makes font in the documentation darker

Previous font size fails AAA contrast check. Also it's hard to read for me personally 😢
Related to #4094 and #4176

@thibaudcolas's proposed changes added in 73cba09a2d5339004d153943dc2c29459433828c . The font change feels a bit jarring, but I think it's just unfamiliarity...

(Note: As part of this change I've gone ahead and removed the /* Do not remove! */ - @lb-, please advise if this is a bad idea :-) )

No issues with removing the comment. Thanks for fixing up the colours @m1kola


accounts: tighten macaroon permissions to reflect allowed calls

Currently, when creating an account, the permissions assigned to the macaroon that is created for the account are:
                "info:read",
                "invoices:read",
                "invoices:write",
                "offchain:read",
                "offchain:write",
                "onchain:read",
                "peers:read"

But this is a superset of the calls that are actually allowed to be made with an account restricted macaroon, which leads to incorrect permissions being reported when using the wasmClientHasPerms call in LNC.
The actual list of calls that should be allowed is (see https://github.com/lightninglabs/lightning-terminal/blob/master/accounts/checkers.go#L111):
/lnrpc.Lightning/AddInvoice
/lnrpc.Lightning/ListInvoices
/lnrpc.Lightning/LookupInvoice
/lnrpc.Lightning/SendPayment
/lnrpc.Lightning/SendPaymentSync
/routerrpc.Router/SendPaymentV2
/lnrpc.Lightning/SendToRoute
/lnrpc.Lightning/SendToRouteSync
/routerrpc.Router/SendToRouteV2
/lnrpc.Lightning/DecodePayReq
/lnrpc.Lightning/ListPayments
/routerrpc.Router/TrackPaymentV2
/lnrpc.Lightning/PendingChannels
/lnrpc.Lightning/ListChannels
/lnrpc.Lightning/ClosedChannels
/lnrpc.Lightning/ChannelBalance
/lnrpc.Lightning/WalletBalance
/lnrpc.Lightning/GetTransactions
/lnrpc.Lightning/ListPeers
/lnrpc.Lightning/GetInfo
/lnrpc.Lightning/GetNodeInfo

@itsrachelfish assigning you to this one as you're the most familiar with this area of the code base! Thanks!

I don't think /lnrpc.Lightning/ListChannels should be on the list because even though the call returns, it's always an empty. It's more useful for people integrating to just have this return as false so they can know to no show any channels-related UI.

I don't think /lnrpc.Lightning/ListChannels should be on the list because even though the call returns, it's always an empty. It's more useful for people integrating to just have this return as false so they can know to no show any channels-related UI.

Sounds good! When I originally built this, I used Zap as the UI to test it. And that just made the call, as it didn't have any capability of detecting permissions.


Prevent markdown styling in scss-docs attributes

The underscores in the scss-docs sortcode triggered markdown styling. To prevent this from happening, we can better switch to backticks, which will prevent this from happening.

Not quite sold on this. We use double quotes in all shortcodes.

@XhmikosR, any other suggestions to fix the issue?

Nope. I'd say we should just live with it. It's not that big of a deal. There are many cases GitHub chokes on stuff and that's expected and normal since we don't use proper Markdown everywhere. The Hugo (or Jekyll or whatever tool) code can cause this stuff.

It is pretty annoying in Atom though:

and I think lot's of developers are using Atom, like @mdo.

Like I said, we don't use Markdown only, so this is quite normal and it already happens in other places.
If we go this way, it's yet another thing we have to remember, and I personally favor simplicity over working around editors' issues.
This happens in all of our docs. And it will keep happening.

Also, VSCode works fine so I'd suggest that you report the issue to Atom or GitHub. If the underscore is in quotes, it shouldn't have been interpreted like it does in your screenshot.

Opened https://github.com/github/markup/issues/1345, I hope it's in the right repo. This should be fixed upstream indeed.


adds support for gpg commit signing (fixes #1018)

This wraps the libgit commit signing methods.
I couldn't get to git_commit_extract_signature as it's not available until 0.24
https://libgit2.github.com/libgit2/#HEAD/group/commit/git_commit_extract_signature

How does this pull request add signing support? It seems like it's just adding a new convenience Repository.createCommitWithSignature function that wraps around the existing Commit.createWithSignature.

That's exactly right - it wraps the Commit.createWithSignature method.
I thought that's what #1018 was calling for - sorry for the mixup.
Would you rather see this method extend Repository.createCommit to take the private key and password additional parameters and do the signing right here in this library?
Repository.prototype.createCommitWithSignature = function(
    updateRef, author, committer, message, tree, parents, privateKey, password, callback)

Or do you have something else in mind?

@dabutvin I think that's what people want but you should ask in #1018 to clarify and see what their desired API would look like.

Make sure to enable support for git_commit_extract_signature for this PR by updating https://github.com/nodegit/nodegit/blob/master/generate/input/descriptor.json#L525

@implausible awesome! I'll give that a try

@implausible I'm having some trouble calling extractSignature.
It accepts some GitBufs and I can't seem to instantiate them.
Do you know a way to handle these buffers to write the signature and signed_data to?
Here's the generated .cc
/*
   * @param Buffer signature
   * @param Buffer signed_data
   * @param Repository repo
   * @param Oid commit_id
   * @param String field
 */
NAN_METHOD(GitCommit::ExtractSignature) {

  if (info.Length() == 0 || !info[0]->IsObject()) {
    return Nan::ThrowError("Buffer signature is required.");
  }

  if (info.Length() == 1 || !info[1]->IsObject()) {
    return Nan::ThrowError("Buffer signed_data is required.");
  }

  if (info.Length() == 2 || !info[2]->IsObject()) {
    return Nan::ThrowError("Repository repo is required.");
  }

  if (info.Length() == 3
    || (!info[3]->IsObject() && !info[3]->IsString())) {
    return Nan::ThrowError("Oid commit_id is required.");
  }
  if (info.Length() == 4 || !info[4]->IsString()) {
    return Nan::ThrowError("String field is required.");
  }

  if (info.Length() == 5 || !info[5]->IsFunction()) {
    return Nan::ThrowError("Callback is required and must be a Function.");
  }

  ExtractSignatureBaton* baton = new ExtractSignatureBaton;

  baton->error_code = GIT_OK;
  baton->error = NULL;

// start convert_from_v8 block
  git_buf * from_signature = NULL;

  from_signature = GitBufConverter::Convert(info[0]);
// end convert_from_v8 block
  baton->signature = from_signature;
// start convert_from_v8 block
  git_buf * from_signed_data = NULL;

  from_signed_data = GitBufConverter::Convert(info[1]);
// end convert_from_v8 block
  baton->signed_data = from_signed_data;
// start convert_from_v8 block
  git_repository * from_repo = NULL;
from_repo = Nan::ObjectWrap::Unwrap<GitRepository>(info[2]->ToObject())->GetValue();
// end convert_from_v8 block
  baton->repo = from_repo;
// start convert_from_v8 block
  git_oid * from_commit_id = NULL;
  if (info[3]->IsString()) {
    // Try and parse in a string to a git_oid
    String::Utf8Value oidString(info[3]->ToString());
    git_oid *oidOut = (git_oid *)malloc(sizeof(git_oid));

    if (git_oid_fromstr(oidOut, (const char *) strdup(*oidString)) != GIT_OK) {
      free(oidOut);

      if (giterr_last()) {
        return Nan::ThrowError(giterr_last()->message);
      } else {
        return Nan::ThrowError("Unknown Error");
      }
    }

    from_commit_id = oidOut;
  }
  else {
from_commit_id = Nan::ObjectWrap::Unwrap<GitOid>(info[3]->ToObject())->GetValue();
  }
// end convert_from_v8 block
  baton->commit_id = from_commit_id;
  baton->commit_idNeedsFree = info[3]->IsString();
// start convert_from_v8 block
  const char * from_field = NULL;

  String::Utf8Value field(info[4]->ToString());
  // malloc with one extra byte so we can add the terminating null character C-strings expect:
  from_field = (const char *) malloc(field.length() + 1);
  // copy the characters from the nodejs string into our C-string (used instead of strdup or strcpy because nulls in
  // the middle of strings are valid coming from nodejs):
  memcpy((void *)from_field, *field, field.length());
  // ensure the final byte of our new string is null, extra casts added to ensure compatibility with various C types
  // used in the nodejs binding generation:
  memset((void *)(((char *)from_field) + field.length()), 0, 1);
// end convert_from_v8 block
  baton->field = from_field;

  Nan::Callback *callback = new Nan::Callback(v8::Local<Function>::Cast(info[5]));
  ExtractSignatureWorker *worker = new ExtractSignatureWorker(baton, callback);
  if (!info[0]->IsUndefined() && !info[0]->IsNull())
    worker->SaveToPersistent("signature", info[0]->ToObject());
  if (!info[1]->IsUndefined() && !info[1]->IsNull())
    worker->SaveToPersistent("signed_data", info[1]->ToObject());
  if (!info[2]->IsUndefined() && !info[2]->IsNull())
    worker->SaveToPersistent("repo", info[2]->ToObject());
  if (!info[3]->IsUndefined() && !info[3]->IsNull())
    worker->SaveToPersistent("commit_id", info[3]->ToObject());
  if (!info[4]->IsUndefined() && !info[4]->IsNull())
    worker->SaveToPersistent("field", info[4]->ToObject());

  AsyncLibgit2QueueWorker(worker);
  return;
}

You can circumvent the GitBuf with a new String(). See here for an example

Let me know if you need any other help on this. I would really like to get GPG signing in sooner rather than later.

@cjhoward92 thanks. I did give that a try, but I need to read the value back out.
var buffer1 = new String();
var buffer2 = new String();

var responseCode = extractSignature(buffer1, buffer2, repo, oid, 'gpgsig');

I can get responseCode to go to 0 (success) with the right parameters, but buffer1 is never populated.
I'm not sure what I am missing.

Oh, I see. I didn't realize you were talking about the ExtractSignature function. Yeah, strings won't work. Does a Buffer object from node work? We may need to add some code to allocate a buffer for us. Let me look around and see what we have that does that already, if anything.
I think the final signature will probably look different since we need to return some of this stuff...

yes it makes sense. I'll try out generating with the buffer and see if I can get it to work.
For what to return.
There are 2 outputs of ExtractSignature  signature and signed_data
We could return an object that has both, or just return the signature.
var result = commit.extractSignature()
and result could be
{
    'signature': 'asiudqw....',
    'signed_data': 'tree asdads....'
}

or result could be just the signature
asiudqw...

the method I was planning to add to lib/commit.js would look something like this, but with the promises
Commit.prototype.extractSignature = function() {
    var signatureBuffer = new String();
    var signedDataBuffer = new String();

    NodeGit.Commit.extractSignature(signatureBuffer, signedDataBuffer, this.repo, this.id(), "gpgsig");

    return signatureBuffer.toString();
}

Do you know what the difference between signature and signature_data is? What would we need signature_data for? I haven't used GPG enough or looked at libgit2 in much detail, so I am not sure what we will be using ExtractSignature for. I assume signature verification, but I don't really know.
Overall I like your ideas! We just need to find the best path for you to be able to execute. For now, you can try setting just the signature as the return for that function and see if you get it working. If so, then we can move to the next step of determining the best way to return all of the data.

sounds good. I'll try to get something working.
I believe the intention of ExtractSignature is so that someone could take the signed_data and the signature and verify it against a public key
signature is the actual signature produced from signing the commit.
signed_data is the content that was signed
This is the full commit:
"tree 6b79e22d69bf46e289df0345a14ca059dfc9bdf6\n\
parent 34734e478d6cf50c27c9d69026d93974d052c454\n\
author Ben Burkert<EMAIL_ADDRESS>1358451456 -0800\n\
committer Ben Burkert<EMAIL_ADDRESS>1358451456 -0800\n\
gpgsig -----BEGIN PGP SIGNATURE-----\n\
 Version: GnuPG v1.4.12 (Darwin)\n\
 \n\
 iQIcBAABAgAGBQJQ+FMIAAoJEH+LfPdZDSs1e3EQAJMjhqjWF+WkGLHju7pTw2al\n\
 o6IoMAhv0Z/LHlWhzBd9e7JeCnanRt12bAU7yvYp9+Z+z+dbwqLwDoFp8LVuigl8\n\
 JGLcnwiUW3rSvhjdCp9irdb4+bhKUnKUzSdsR2CK4/hC0N2i/HOvMYX+BRsvqweq\n\
 AsAkA6dAWh+gAfedrBUkCTGhlNYoetjdakWqlGL1TiKAefEZrtA1TpPkGn92vbLq\n\
 SphFRUY9hVn1ZBWrT3hEpvAIcZag3rTOiRVT1X1flj8B2vGCEr3RrcwOIZikpdaW\n\
 who/X3xh/DGbI2RbuxmmJpxxP/8dsVchRJJzBwG+yhwU/iN3MlV2c5D69tls/Dok\n\
 6VbyU4lm/ae0y3yR83D9dUlkycOnmmlBAHKIZ9qUts9X7mWJf0+yy2QxJVpjaTGG\n\
 cmnQKKPeNIhGJk2ENnnnzjEve7L7YJQF6itbx5VCOcsGh3Ocb3YR7DMdWjt7f8pu\n\
 c6j+q1rP7EpE2afUN/geSlp5i3x8aXZPDj67jImbVCE/Q1X9voCtyzGJH7MXR0N9\n\
 ZpRF8yzveRfMH8bwAJjSOGAFF5XkcR/RNY95o+J+QcgBLdX48h+ZdNmUf6jqlu3J\n\
 7KmTXXQcOVpN6dD3CmRFsbjq+x6RHwa8u1iGn+oIkX908r97ckfB/kHKH7ZdXIJc\n\
 cpxtDQQMGYFpXK/71stq\n\
 =ozeK\n\
 -----END PGP SIGNATURE-----\n\
\n\
a simple commit which works\n"

this is the signature:
-----BEGIN PGP SIGNATURE-----\n\
" Version: GnuPG v1.4.12 (Darwin)\n\
 \n\
 iQIcBAABAgAGBQJQ+FMIAAoJEH+LfPdZDSs1e3EQAJMjhqjWF+WkGLHju7pTw2al\n\
 o6IoMAhv0Z/LHlWhzBd9e7JeCnanRt12bAU7yvYp9+Z+z+dbwqLwDoFp8LVuigl8\n\
 JGLcnwiUW3rSvhjdCp9irdb4+bhKUnKUzSdsR2CK4/hC0N2i/HOvMYX+BRsvqweq\n\
 AsAkA6dAWh+gAfedrBUkCTGhlNYoetjdakWqlGL1TiKAefEZrtA1TpPkGn92vbLq\n\
 SphFRUY9hVn1ZBWrT3hEpvAIcZag3rTOiRVT1X1flj8B2vGCEr3RrcwOIZikpdaW\n\
 who/X3xh/DGbI2RbuxmmJpxxP/8dsVchRJJzBwG+yhwU/iN3MlV2c5D69tls/Dok\n\
 6VbyU4lm/ae0y3yR83D9dUlkycOnmmlBAHKIZ9qUts9X7mWJf0+yy2QxJVpjaTGG\n\
 cmnQKKPeNIhGJk2ENnnnzjEve7L7YJQF6itbx5VCOcsGh3Ocb3YR7DMdWjt7f8pu\n\
 c6j+q1rP7EpE2afUN/geSlp5i3x8aXZPDj67jImbVCE/Q1X9voCtyzGJH7MXR0N9\n\
 ZpRF8yzveRfMH8bwAJjSOGAFF5XkcR/RNY95o+J+QcgBLdX48h+ZdNmUf6jqlu3J\n\
 7KmTXXQcOVpN6dD3CmRFsbjq+x6RHwa8u1iGn+oIkX908r97ckfB/kHKH7ZdXIJc\n\
 cpxtDQQMGYFpXK/71stq\n\
 =ozeK\n\
 -----END PGP SIGNATURE-----"

This is signed_data:
"tree 6b79e22d69bf46e289df0345a14ca059dfc9bdf6\n\
parent 34734e478d6cf50c27c9d69026d93974d052c454\n\
author Ben Burkert<EMAIL_ADDRESS>1358451456 -0800\n\
committer Ben Burkert<EMAIL_ADDRESS>1358451456 -0800\n\
\n\
a simple commit which works\n";

Cool, that makes sense. Yeah, we should probably get that in. Let me know if you want any extra help or just a second set of eyes!
Thanks again for working on this. I know a lot of people want GPG in NodeGit so you will be a hero!

@dabutvin I am opening up a PR shortly that will get git_commit_extract_signature built into nodegit for you. You'll want to rebase on that. I will post here when it's open.

@dabutvin https://github.com/nodegit/nodegit/pull/1458 this PR might help you out :).

@implausible I updated to verify the signature from the signed commit using the new commit.getSignature method.

Can you work your magic in descriptor.json for git_commit_create_buffer?
This is what I am trying to set up in repository.js
onSignature would be a function that is up to the caller to implement
Repository.prototype.createCommitWithSignature = function(
    author, committer, message, tree, parents, signature_field, onSignature, callback) {

  var repo = this;
  var promises = [];

  parents = parents || [];

  promises.push(repo.getTree(tree));

  parents.forEach(function(parent) {
    promises.push(repo.getCommit(parent));
  });

  return Promise.all(promises).then(function(results) {
    tree = results[0];

    // Get the normalized values for our input into the function
    var parentsLength = parents.length;
    parents = [];

    for (var i = 0; i < parentsLength; i++) {
      parents.push(results[i + 1]);
    }

    return Commit.createBuffer(
      repo,
      author,
      committer,
      null /* use default message encoding */,
      message,
      tree,
      parents.length,
      parents
    );
  }).then(function(commit_content) {
    return Commit.createWithSignature(
        repo,
        commit_content,
        onSignature(commit_content),
        "gpgsig");
  }, callback);
};

One thing to keep in mind with the onSignature callback is that it may be asynchronous. I would change the flow in your code to account for that.

@dabutvin https://github.com/nodegit/nodegit/pull/1481

@implausible thanks for exposing the createCommitBuffer
I updated the branch

No changes for a while? Still working on it? @dabutvin

I forgot all about this actually. I'll rebase the commit now - it looks finished, but there is a broken build.

it passed!

@implausible not sure what happened to the build, but the documentation config looks like it hung.
Maybe it just needs to be restarted?


<EMAIL_ADDRESS>Can I place theme method in application controller?

@chamnap  - Its giving error if I do so. Any help.

It works even if we call theme in ApplicationController.
@sweetymehta could you provide more details on this ? Like what error you are getting and how you are calling theme.

Can you check this example repo, https://github.com/chamnap/themes_on_rails_example?

@yogeshjain999 I was using it with locomotivecms engine where I found an error undefined method theme for appliction controller.
@chamnap yeah I checked that too. May be issue with Locomotivecms Engine.
Anyways I changed the way to solve it. Thanks

Cool


Demo is unavailable

Hello
First of all, thanks for this great project.
I've noticed that the demo instance mentioned in the README is currently not available: https://demo.linkding.link/
There seems to be no A DNS record:

Will the demo be made available again or did you intentionally shut it down?

I had to recreate the demo setup, and have only configured an AAAA name record. The hoster I'm using does not provide a IPv4 address (anymore?), so it seems I'm not able to set an A name record.
The demo is reachable for me from several devices, and at least the AAAA name record is detected by a DNS lookup:

Maybe you could check from a different device, or using a different DNS provider?

I had to recreate the demo setup, and have only configured an AAAA name record. The hoster I'm using does not provide a IPv4 address (anymore?), so it seems I'm not able to set an A name record.
The demo is reachable for me from several devices, and at least the AAAA name record is detected by a DNS lookup:
Maybe you could check from a different device, or using a different DNS provider?

@sissbruecker Thanks for your reply. I've been in a IPv4-only network, so it makes sense now.
Would you consider adding a IPv4 address again? IPv6 adoption has been increasing over the past years but is still just below 50% worldwide: https://www.google.com/intl/en/ipv6/statistics.html#tab=ipv6-adoption
In many countries, IPv6 use is only in the single-digit percentage range or not present at all: https://www.google.com/intl/en/ipv6/statistics.html#tab=per-country-ipv6-adoption
I am aware that the demo instance is a voluntary service on your part. However, if an IPv4 address can be added at a reasonable cost, this might be worth considering in terms of the accessibility of the demo to the community.
I look forward to hearing your take on this.

Did take a closer look, and it seems the hoster I'm using (fly.io) does not provide a dedicated IPv4 address (for free) anymore. More context here: https://community.fly.io/t/announcement-shared-anycast-ipv4/9384
I understand your concerns, but at this point I have no incentive to invest anything in the demo. It's just intended as a convenient way to try out the app. If it doesn't work, then you'll have to spin up your own instance, which is just less convenient.

Did take a closer look, and it seems the hoster I'm using (fly.io) does not provide a dedicated IPv4 address (for free) anymore. More context here: https://community.fly.io/t/announcement-shared-anycast-ipv4/9384
I understand your concerns, but at this point I have no incentive to invest anything in the demo. It's just intended as a convenient way to try out the app. If it doesn't work, then you'll have to spin up your own instance, which is just less convenient.

@sissbruecker I understand. Let me know if you'd think a demo with IPv4 would be a value-add for the community / attracting new users and potential contributors. I'd be happy to support the project and sponsor the IPv4 costs for a year.

Sure and thanks. I'll close the issue for now.

@sissbruecker Apologies for reopening a closed issue, but I believe that providing a demonstration can greatly aid adoption (convenience is a powerful thing). Moreover, I have a solution that is cost-free, sustainable in the long run, and straightforward to implement. Place Cloudflare in front of the demo. By enabling the Cloudflare proxy for a record, it will handle both IPv4 and IPv6, even if your original setup only supports IPv6.

What about changing the actual state of the issue?
The projects seems to be very good! And we like to try :)

╭╴IP:<IP_ADDRESS> at  ~ on  mast… ( )
╰─ nslookup demo.linkding.link
伺服器:  UnKnown
Address:  <IP_ADDRESS>
名稱:    demo.linkding.link
Address:  2a09:8280:1::a:cd73
DNS look like know the domain match IPv6 address, but the Chrome browser program still cannot connect to the IPv6 address ?

No update ?

Or this project already dead ?

Or this project already dead ?

Just use an ipv6 proxy to see the demo site like this one:
http://www.ipv6proxy.net/go.php?u=http%3A%2F%2Fdemo.linkding.link%2Flogin%2F%3Fnext%3D%2Fbookmarks&b=1


Export datapackage to zip

We need to export data into a zip if requested
Acceptance criteria

[x] There is zip file on S3

Tasks

[x] do analysis
[x] grab all derived + source + non-tabular (if exists) resources in one dp.json

[x] Allow loading of derived non-streamed dependencies - fixed in https://github.com/datahq/assembler/commit/b3c8593e47a3c9b75781a02b2e9c2aa0aa2b8e07

[x] Split the non-tabular node to generate one item per resource, so we can have them in dp.json #40
[x] zip in temp directory

[x] find the way how to zip in temp directory and not have pipeline always dirty (as tmpdir is always new)

[x] processor for setting correct paths to resources

[x] Find the way to set dpp:streamedFrom property to absolute path of the resource like it is done in load_modified_resources https://github.com/datahq/assembler/blob/master/datapackage_pipelines_assembler/processors/load_modified_resources.py#L41

[x] add zip as another resource

[x] processor to erase reources from dp.json of zip

Analysis
What we want to be zipped? - We have several different options:

Only original source (may be broken csv, json etc..)
Only good data (derived csv, json, etc...)
Original data + good data (derived csv, json etc...)

How should datapackage.json look like?

Has relative paths for resources
Has URL for resources
Both?
What about zip itself? it is one of the resources, and should be included in dp.json that will be exported on S3, but zip itself needs dp.json that includes all the resources to zip them

What about other output formats? Eg sqlite - should it be zipped if both present?

If zip occurred as kind in source-pec we should append new processor dump.to_zip to the pipeline, after add it as resource and export to s3.
Available parameter(s):
out-file: optional #defaults to {dataset-name}.zip
Spec for source
meta:
  owner: <owner username>
  ownerid: <owner unique id>
  dataset: <dataset name>
  version: 1
  findability: <published/unlisted/private>
inputs:
  -
    kind: datapackage
    url: <datapackage-url>
    parameters:
      resource-mapping:
        <resource-name-or-path>: <resource-url>
outputs:
  -
    kind: zip
    parameter:
       out-file:: my path

FIXED. First dataset with zip output http://datahub.io/zelima1/vix-zip-testing#resource-dataset_zip
This actually took more than 40 hours to be implemented.


Publish to crates.io: Think of a better name than uuid2

Feedback wanted. This is the only reason I havent put it on crates.io yet.

nuuid, courtesy of reddit
Works for me!


Shadowing api var in generated main.go

Problem statement
Shadowing api var in generated main.go if go-swagger was run with --server-package=api. This leads to failed compilation when call go get -u -f ./....
# test/cmd/a-todo-list-application-server
cmd/a-todo-list-application-server/main.go:27:15: api.NewServer undefined (type *operations.ATodoListApplicationAPI has no field or method NewServer)

Swagger specification
Any. I check spec from Simple Server tutorial
Steps to reproduce

Take swagger specification from Simple Server tutorial as swagger.yaml
Call go module init test in same dir where swagger.yaml was placed
Call swagger generate server --server-package=api
Call go get -u -f ./...

Environment
swagger version:
version: v0.25.0
commit: f032690aab0634d97e2861a708d8fd9365ba77d2

go version: go version go1.14.2 darwin/amd64
OS: macOS Catalina 10.15.6

@igorlysak  Yes, there are known issues with the special name "api". This means that the import package realiasing failed to detect the conflicting situation. This is a bug.


Feature: AWS NAT Gateway

WIP
Signed-off-by: Noel Georgi<EMAIL_ADDRESS>Fixes
#259
Description of your changes
Add NAT Gateway
I have:

[ x ] Run make reviewable to ensure this PR is ready for review.
[ x ] Ensured this PR contains a neat, self documenting set of commits.
[ x ] Updated any relevant documentation, examples, or release notes.
[ x ] Updated the dependencies in app.yaml to include any new role permissions.

Fixes
#308
#259

@frezbo it looks like this PR fixes #259 but not #308 which requires some changes in RouteTable resource.

I'll check back on this sometime this weekend.

@muvaf this is ready for the second set of review. I have alos updated the description for this: https://github.com/crossplane/provider-aws/pull/342#issuecomment-701336570

@muvaf please take another look, I guess I've covered all

@muvaf this should be good to go for another review

@muvaf This should be good for merging, do you want me to do a rebase?

yup, I tested with this YAML:
---
apiVersion: ec2.aws.crossplane.io/v1beta1
kind: VPC
metadata:
  name: frezbo-vpc
spec:
  forProvider:
    region: us-east-1
    cidrBlock: <IP_ADDRESS>/16
    enableDnsSupport: true
    enableDnsHostNames: true
    instanceTenancy: default
    tags:
      - key: Name
        value: frezbo-vpc
      - key: Owner
        value: noel.georgi
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider
---
apiVersion: ec2.aws.crossplane.io/v1beta1
kind: Subnet
metadata:
  name: frezbo-pub
spec:
  forProvider:
    cidrBlock: <IP_ADDRESS>/24
    region: us-east-1
    mapPublicIPOnLaunch: true
    vpcIdRef:
      name: frezbo-vpc
    tags:
      - key: Name
        value: frezbo-pub
      - key: Owner
        value: noel.georgi
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider
---
apiVersion: ec2.aws.crossplane.io/v1beta1
kind: Subnet
metadata:
  name: frezbo-priv
spec:
  forProvider:
    cidrBlock: <IP_ADDRESS>/24
    region: us-east-1
    mapPublicIPOnLaunch: false
    vpcIdRef:
      name: frezbo-vpc
    tags:
      - key: Name
        value: frezbo-priv
      - key: Owner
        value: noel.georgi
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider
---
apiVersion: ec2.aws.crossplane.io/v1beta1
kind: InternetGateway
metadata:
  name: frezbo-igw
spec:
  forProvider:
    region: us-east-1
    vpcIdRef:
      name: frezbo-vpc
    tags:
      - key: Name
        value: frezbo-igw
      - key: Owner
        value: noel.georgi
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider
---
apiVersion: ec2.aws.crossplane.io/v1alpha1
kind: ElasticIP
metadata:
  name: frezbo-eip
spec:
  forProvider:
    region: us-east-1
    tags:
      - key: Name
        value: frezbo-eip
      - key: Owner
        value: noel.georgi
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider
---
apiVersion: ec2.aws.crossplane.io/v1alpha1
kind: NATGateway
metadata:
  name: frezbo-nat
spec:
  forProvider:
    region: us-east-1
    allocationIdRef:
      name: frezbo-eip
    subnetIdRef:
      name: frezbo-pub
    tags:
      - key: Name
        value: frezbo-nat
      - key: Owner
        value: noel.georgi
      - key: Environment
        value: development
      - key: ExpirationDate
        value: 2020-10-31
  reclaimPolicy: Delete
  providerConfigRef:
    name: aws-provider

@muvaf can you squash the commits while merging, there are so many changes that got in from master after I started. It would be a pain to do that manually.

Just squashed and merged, thank you @frezbo !


Show header template ?

Hi , i have a flowlistview that runs pefect.
But when i added a header template its not show ?
Any solution please ?

Not working for me too


Failed to activate the urban-syntax theme

[Enter steps to reproduce:]

...change syntex theme
...

Atom: 1.26.1 x64
Electron: 1.7.11
OS: Ubuntu 18.04
Thrown From: urban-syntax package 1.0.3
Stack Trace
Failed to activate the urban-syntax theme
At variable @dark-green is undefined in /home/aditya/.atom/packages/urban-syntax/base/urban.less:380:11

LessError: variable @dark-green is undefined
at /home/aditya/.atom/packages/urban-syntax/base/urban.less:380:11

Commands

Non-Core Packages
seti-ui 1.10.0
teletype 0.13.2
urban-syntax 1.0.3

Was fixed in 1.0.4


Open Scenario Tag to Customers

Description
AWS is working on a conformance testing framework for EKS-Anywhere, which helps partners to get their products plugged in and test automatically against (a) All existing and new supported hardware for EKS-A (b) All existing and new versions of EKS version updates on EKS-Anywhere. This framework eliminates complexities that partners go through to procure new hardware (which many times may not be doable) to validate their products on EKS-A and helps AWS release with confidence and including partners in any upcoming launches (without any additional efforts from partners' end)
The framework is open sourced and an EKS engineer is making the necessary changes to plug in NEWR helm chart installation to this framework. To make the New Relic Testing fully automated, we need to open the ScenarioTag environment variable configurable to users of the e2e action.
Code Change
I open the ScenarioTag env and make if configurable to users of the e2e action.
Testings
...

 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.


JPEG is allowing for greater than 3000, api doesn't allow

Describe the bug
The nextjs loader for JPEG allows for 5000px wide to be uploaded (a constant in the library) yet when the loader loads a jpeg with something smaller than 5000 but more than 3000 the API returns an error saying it can't be larger than 3000.
Failing image:
https://ucarecdn.com/3cdb1700-71c3-43a8-8074-944095e880c8/-/format/auto/-/stretch/off/-/progressive/yes/-/resize/3840x/-/quality/smart/careers-index-hero-person6.jpg
Successful upload:
https://ucarecdn.com/3cdb1700-71c3-43a8-8074-944095e880c8/-/format/auto/-/stretch/off/-/progressive/yes/-/resize/3000x/-/quality/smart/careers-index-hero-person6.jpg
Reference:
https://github.com/uploadcare/nextjs-loader/blob/main/src/utils/constants.ts#L2
Expected behavior

allow over 3000 for JPEGs
or: change the code to only allow 3000 for all images

Hey @panbanda, thanks for the feedback. We forgot to add /format/jpeg/ in these cases, I'll fix it asap.

Done, see v0.3.2


Binary Tree Zigzag Level Order Traversal

Related Issue

Issuse #1269

Proposed Changes

I added zigzag level order traversal implementation code.
I updated Readme accordingly.

Additional Info

Readme has all the information and also I included comments in the code.

Checklist

[x] ✅ My code follows the code style of this project.
[x] 📝 My change requires a change to the README.
[x] 🎀 I have updated the README accordingly.
[x] 👀 I have read the CONTRIBUTING document.
[x] ✨ I have added tests to cover my changes.
[x] 🚩 All new and existing tests passed.
[x] 🌟 ed the repo

I added the implementation of the Zigzag level order traversal algorithm applied on a binary tree.

I included 2 examples, the first one I got was from Leetcode and the second one was from GeeksforGeeks and I checked if the answers were right from those sites.

I ran my tests on Visual Studio Community 2019, CPP compiler.
The 2 tests are included in the screenshots.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Output Screenshots

Screenshot #1
Screenshot #2

Function's Code
Test code and Result on Console

Please follow the readme guidelines https://github.com/Lakhankumawat/LearnCPP/blob/main/B-Backtracking/README.md

I changed the readme file.

You haven't taken the tree as input !

Yes I'm sorry I was waiting for your reply as I asked you what so you mean exactly. But ok I'll create a class for the tree if I understood it right.
Thanks and sorry for disturbance.

You haven't taken the tree as input !

Yes I'm sorry I was waiting for your reply as I asked you what do you mean exactly. But ok I'll create a class for the tree if I understood it right. Thanks and sorry for disturbance.

You are hard coding a tree right? I want you to ask the user to enter the tree as input !

You haven't taken the tree as input !

Yes I'm sorry I was waiting for your reply as I asked you what do you mean exactly. But ok I'll create a class for the tree if I understood it right. Thanks and sorry for disturbance.

You are hard coding a tree right? I want you to ask the user to enter the tree as input !

Okay Sorry for the confusion, I updated the cpp file and Readme also.

@all-contributors please add @miretteamin code ,

Check out : https://github.com/Lakhankumawat/LearnCPP#contributors-

Congo on your first pr merged 🥳

Thank you!!! :)


MD: TLS 1.3 hashing & HMAC

There are a number of places in the TLS 1.3 handshake where hashes/HMACs are computed. This should be done using psa_hash_/psa_mac_ functions rather than mbedtls_md_ or mbedtls_shaNNN functions. (Regardless of the value of MBEDTLS_USE_PSA_CRYPTO, which only affects 1.2, as 1.3 should always use PSA.)

[x] In ssl_tls13_parse_certificate_verify(): use psa_hash_compute() instead of mbedtls_shaNNN().
[x] In mbedtls_ssl_tls13_derive_secret(): use psa_mac_compute() instead of mbedtls_md_hmac().
[x] Provide an implementation of mbedtls_ssl_get_handshake_transcript() in the case where MBEDTLS_USE_PSA_CRYPTO is enabled.

Note: this task is only about computations as opposed to bookkeeping / algorithm management. This means replacing calls to mbedtls_md_info_xxx() and mbedtls_md_get_xxx(), and moving away from using mbedtls_md_type_t for storing information is out of scope for this task; it will be the goal of a future task (see #5209). However, it some instances can be removed/replaced conveniently in the course of this task, of course this can be done, but that's not an explicit goal for now.
Note: while based on hashing/HMAC, HKDF is outside the scope of this task, see #5334

Testing waits for https://github.com/ARMmbed/mbedtls/pull/5362.

I'm not sure I understand why testing depends on 1.3-only builds? We should be able to test in a build with both 1.3 and 1.2 enabled, or am I missing something?

You are right, I can write a new test. But if I want to use ssl test suite, and test it in the bigger scope, I need to go through mbedtls_ssl_handshake_step in ssl_tls.c. From line 5265 there are callers that takes action in TLS1.3 or 1.2 only config. Or am I missing something?

Before looking at the details, here's my general reasoning: this task is about replacing existing code with a new implementation based on PSA; hopefully the code being replaced was already covered by tests, so the existing tests should cover the new implementation as well. (Though if you think existing tests should be expanded, then by all means say so and expand the testing!)

From line 5265 there are callers that takes action in TLS1.3 or 1.2 only config.

Thanks for the specific reference. After taking a look, I'm thinking perhaps there is some confusion between runtime config and compile-time config: mbedtls_ssl_conf_is_tls13_only() checks if the runtime config (the mbedtls_ssl_config object that was configured with mbedtls_ssl_conf_xxx_version()) is 1.3 only. OTOH, #5362 is about supporting 1.3 only builds, that is with MBEDTLS_SSL_PROTO_TLS1_3 defined  but MBEDTLS_SSL_PROTO_TLS1_2 undefined in mbedtls_config.h.
In principle, the possibilities are the following:

1.3 only builds (PROTO_TLS1_2 undefined): the runtime config will always be 1.3 only. (This type of build is currently broken and #5362 is fixing that.)
1.2 only builds (PROTO_TLS1_3 undefined): the runtime config will always be 1.2 only.
dual builds (both PROTO_TLS1_x defined): the runtime config can be either:

1.3 only (call mbedtls_ssl_conf_min_version() to set the minimum to 1.3)
1.2 only (call mbedtls_ssl_conf_max_version() to set the maximum to 1.2)
both enabled: the version used in the handshake depends on what the peer supports - this is currently not implemented (as you noted, the dispatch in handshake_step currently relies on ssl->config being 1.2-only or 1.3-only), but will be in the future, see https://github.com/ARMmbed/mbedtls/issues/4823

So, there's three levels constraining the version that will eventually be used in a handshake: compile-time config, runtime config, and in-protocol negotiation.
Anyway, back to our problem, I think for testing you only require a 1.3-only runtime config (ssl->config), which can be achieved in a dual build. Feel free to point out if I'm missing something.

Oh, right, I forgot a very important point about the state of our TLS 1.3 implementation: so far we only implement the client side - server side is planned for the next quarter. So, indeed this prevents testing in test_suite_ssl, and I should have noticed as soon as you mentioned it, sorry. (Historically SSL/TLS testing was done in tests/compat.sh and tests/ssl-opt.sh only, but now indeed we prefer to have tests in test_suite_ssl too for new features - there's just a temporary exception for TLS 1.3 while we haven't implemented the server side.)
But TLS 1.3 is still tested (we wouldn't have released Mbed TLS 3.1 otherwise), just in another place: tests/ssl-opt.sh (some of the test cases are in tests/opt-testcases/tls13-compat.sh) - because in that script we can test our client against an OpenSSL or GnuTLS server.
By the way, we have a script, tests/scripts/basic-build-test.sh to measure test coverage with lcov. I usually run it inside a Docker image built from of [the Dockerfile that we use on the CI](https://github.com/ARMmbed/mbedtls-test/blob/master/resources/docker_files/ubuntu-16.04/Dockerfile. Of course it's also possible to run a more targeted campain, for example make CFLAGS=--coverage LDFLAGS=--coverage && tests/ssl-opt.sh -f 'TLS 1.3' && make lcov, and to run it on your machine if you have the required versions of GnuTLS and OpenSSL installed, with the right variables set in the environment (see the Dockerfile).

@silabs-PeterK I think the third item in the description has actually be done independently by @ronald-cron-arm in the meantime: #5532 - specifically here. So, I suggest when you create a PR for this issue, that you only address the first two items, in order to avoid conflicts with #5532.

Hi @silabs-PeterK ! I just wanted to check if everything is OK regarding this task - I hope I've answered your questions above and I can't see any dependency blocking this, but please let me know if I missed something or if you have any further questions!


reenable inline functions on windows by updating bindgen

Fixes #7

correction, first attempt was a bad gateway (502) on this URL: https://chromium.googlesource.com/chromium/deps/icu.git/
interesting.

maybe it caused by https://github.com/Brooooooklyn/rust-skia/blob/master/build.rs#L31


Cannot run bash script in ScratchPad

I am running this extension on its version 2020.06.14 release 0.1.1 in Visual Code Studio Version 1.46.1 and there's no additional action to run code from the markdown file edition panel:

Please try 'bash' instead of 'sh'

Still with bash fails. I also see in your screenshot the run button doesn't appear under the markdown code block:

Actually, it's working now :)
I was trying to use this feature on one of my GistPad Scratchpads... do you plan to support it too?
https://marketplace.visualstudio.com/items?itemName=vsls-contrib.gistfs
I wonder how this would work with the Remote SSH extension too.
Thank you.

What is the scope of the inline code?  Can you use results from the code in the md file?  For example, passing arguments from one code block to another.


Support multiple pending future values

This may be a V8Value promise variant, although that will require a fix for the Deserialize'd local stability issue
That or a trait object expressing a function accepting runtime, or accepted by runtime

https://github.com/denoland/deno_core/pull/796
This should allow direct exports of promises without borrowing the runtime using v8::Promise
I'm thinking an into_future taking a runtime as the resolver
Paired with a resolve_promise on the runtime

A fix for the stability issue is in deno_core now
It is probably prudent to wait for that to go to crate for 0.5
Then I can include the promises ootb

Fixed in the upcoming 0.5.0

Fixed in 0.5.0


[Request] Filter entries by given range?

Could we add an option to filter the picker entries by a given range?
For example we could bind in visual selection to take the start and end lines, and pass that into telescope-undo, then filter entries if they don't have a diff between the given lines? I used this a lot in IntelliJ and it would be useful to have here. It probably doesnt have to be smart and try and resolve where code has moved about between diffs, could probably just check the diff lies between the given line numbers
Maybe something like this before passing it into telescope:
local function undo_history_for_range(startline, endline)
    local undotree = vim.fn.undotree()
    local changes = {}

    for _, entry in ipairs(undotree.entries) do
        for _, change in ipairs(entry.changes or {}) do
            if change.new_start >= startline and change.old_end <= endline then
                table.insert(changes, change)
            end
        end
    end

    return changes
end

-- Example usage: Get undo history for lines 10 to 20
local changes = undo_history_for_range(10, 20)
print(vim.inspect(changes))

https://www.jetbrains.com/help/idea/local-history.html

Hi, that's an interesting one. In principle this plugin just uses the builtin undo states which does not support any kind of querying based on content. However, we precalculate all diffs while visiting the undo states and building the tree, so we could tell which lines are affected with a minimum of fancy code necessary 🤔 What do you think about the following:

If you restore a state shown by this _for_range function, you will still get any intermediate changes not shown. Yank maps will work nicely though.
The tree view will be broken and not really fixable without a lot of effort.

Otherwise, this might be very doable and useful, yeah 👍🏻


Document skipPatterns and todoPatterns

Just by looking at the readme, I couldn't figure out what kind of syntaxes they accept :smile:

Related comment over at the underlying package used for checking links: https://github.com/Munter/hyperlink/issues/148


updated Websocket in Chrome/Chromium

I run Chrome dev channel, which has updated its websocket version, breaking compatibility with tornado websockets.
ref: http://updates.html5rocks.com/2011/10/WebSockets-updated-to-latest-version-in-Chrome-Canary
Which suggests Sec-WebSocket-Version is now 13, but Wikipedia suggests Chromium is using something called hybi 17, which may or may not be the same.
I imagine you guys are more familiar with what these things actually mean than I am.

This change fixes it for me though it does not handle the change pertaining to the origin handling
https://groups.google.com/a/chromium.org/group/chromium-html5/browse_thread/thread/9f8214e3a9ed037f?pli=1
diff --git a/tornado/websocket.py b/tornado/websocket.py
index 3a17f93..563b80a 100644
--- a/tornado/websocket.py
+++ b/tornado/websocket.py
@@ -79,7 +79,7 @@ class WebSocketHandler(tornado.web.RequestHandler):
self.open_args = args
self.open_kwargs = kwargs

   if (self.request.headers.get("Sec-WebSocket-Version") == "8" or

  if (self.request.headers.get("Sec-WebSocket-Version") == "13" or self.request.headers.get("Sec-WebSocket-Version") == "8" or
       self.request.headers.get("Sec-WebSocket-Version") == "7"):
       self.ws_connection = WebSocketProtocol8(self)
       self.ws_connection.accept_connection()


Make reflection on anonymous types work

Anonymous types are generic, so rooting all application types still doesn't make reflection access to their properties work.
If we see an anonymous type get allocated, we compile all property accessors.
This logic is specific to the usage-base metadata analyzer and will only kick in if the compiler is building the reflectable closure. The code won't run if e.g. reflection information is provided externally, or if we don't generate any metadata.
Fixes #6951.

Thanks!


Increase header size of search result titles.

Closes #196.

Coverage remained the same at 100.0% when pulling 76e3192e77cc0769049fee1c42b04bdeb43e7601 on index_header_size into c290dc8e54df1467b08b5ec0062b1bfda84173bb on master.


Windows executable does not handle non-ascii file names correctly

Running
> dart.exe æøå.dart
fails with:
Dart_NewStringFromUTF8 expects argument 'str' to be valid UTF-8.

I tried these examples on Windows, and saw no errors.


No implementation for setting position by drag & drop

There is no solution for implemention "spare pieces" out of the box.
If this is a desired feature, but it won't be done anytime soon (I mean no work has started), I can try adding it by myself.

I thought about it, but then implemented an editor without draggable spare pieces: https://shaack.com/projekte/cm-fen-editor/ it it works not bad. But if you want, you can add the implementation of draggable spare pieces to cm-chessboard. I would prefer a kind of plugin-solution to not bloat the core code with extensions rarely needed.


Service doesn't start after phone restart

I'm currently testing the battery reporting (and location too) and I can see that after reboot entity doesn't get any updates until I run App.
Shouldn't background service start automatically together with the system?

It would also be interesting to know how often the App is reporting the battery status and GPS, for battery I would sugget on each update (or when charging state changes, especially when that will be implemented hopefully).

I actually noticed that the Battery it is not updated unless the App is opened (it is not updated even if it's in background as far as I can tell).
I did some test leaving the phone discharge and in HA (using only the Mobile App reported value) the battery level has never been updated (tested with 3 hours span), same goes when I charged it.
(OnePlus 5 with Android 9 Oxygen OS 9.0.9)

If you want battery updates outside of location changes I would say create a new issue for that enhancement.  As far as when the battery level gets updated currently, it's whenever we update the location.  I added some extra reboot intents in https://github.com/home-assistant/home-assistant-android/pull/95 but if that's doesn't fix it I'll dig deeper.  @andriej what make, model and os version do you have?

Oh ok, sorry I didn't know that, I thought the battery level was indipendent from the GPS, I will open a new issue for that ;)
Cheers

@JBassett didn't see your question, but it's android 10 oneplus 6

I added some more intents to the boot handler, try again with latest.

When the next version is supposed to be released?
Is there a pre-defined release day that HA uses as standard? (Ex. Every 2 Tuesday)

It's being released as we speak. It should be available within the next 12 hours.

Reopening as this is now a issue for notifications too.

Cheers :)
Still curious to know if there is a specific day of the week we can usually expect a new update (if available) or if it goes on as soon as a feature is completed :)

It goes out whenever one of the admins decides to pull the trigger

After consultation with Justin, we will open a new issue.


[AUTO] Unhandled exception (#b99fcc8c) Pickup Unicode

Environment
Cobra version: 2.0.0-alpha.5
Python version: 2.7.12
Operating system: Linux-4.9.12-moby-x86_64-with-Ubuntu-16.04-xenial
Command line: cobra.py -t /tmp/web1

Traceback
Traceback (most recent call last):
  File "/cobra/cobra/__init__.py", line 82, in main
    cli.start(args.target, args.format, args.output, args.special_rules, a_sid)
  File "/cobra/cobra/cli.py", line 75, in start
    files, file_count, time_consume = Directory(target_directory).collect_files()
  File "/cobra/cobra/pickup.py", line 163, in collect_files
    self.files(self.absolute_path)
  File "/cobra/cobra/pickup.py", line 206, in files
    self.files(directory, level + 1)
  File "/cobra/cobra/pickup.py", line 206, in files
    self.files(directory, level + 1)
  File "/cobra/cobra/pickup.py", line 206, in files
    self.files(directory, level + 1)
  File "/cobra/cobra/pickup.py", line 206, in files
    self.files(directory, level + 1)
  File "/cobra/cobra/pickup.py", line 205, in files
    if os.path.isdir(directory):
  File "/usr/lib/python2.7/genericpath.py", line 49, in isdir
    st = os.stat(s)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 36-38: ordinal not in range(128)

same as same #627


No config-sample.json

Where can i find it?
Thx

In development. Watch it

still in development ?? or not working on int anymore ?

Not working on it anymore
Verstuurd vanaf mijn iPhone

Op 2 okt. 2017 om 15:02 heeft gielk<EMAIL_ADDRESS>het volgende geschreven:
still in development ?? or not working on int anymore ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Initial release is now out


"cargo winrt --version" no longer displays version information

Previously, I had cargo-winrt version 0.7.0 installed. Running cargo winrt --version on the command line produced the following output:

cargo-winrt 0.7.0

After installing the latest version (0.7.2) of cargo-winrt by executing cargo install cargo-winrt produces the following output instead:

error: missing subcommand

(followed by the generic help text, that does include the -v and --version options). Was the option --version removed on purpose, or this is a regression?

This is something we got for free when using clap. We moved to a less compiler intensive CLI args parsing library and lost some of the niceties along the way. Thanks for reporting this!


Bump Chainlink-relay for grpc proxy

Based off https://github.com/smartcontractkit/chainlink/pull/9996
smartcontract-it.atlassian.net/browse/BCF-2364
Requires:
https://github.com/smartcontractkit/chainlink-relay/pull/144

@aalu1418 helped to figure out the issues with dependencies. It was mostly dependencies bumping, but there are also fixes to e2e tests. Right now its pending @smickovskid to approve of Aarons changes to the e2e tests.
@archseer also mentioned how the contract/gauntlet tests fail because hardhat-starknet-plugin doesn't support latest cairo versions yet


Use strongly typed ReadValue when reading values for propagation from update pipeline

Similar to issue #736 and #738, when reading store-generated values from an IValueReader in the update pipeline we always use ReadValue<object>, which translates to reading a value for object from the DbDataReader. We know that using the typed reader method can be important for some ADO.NET providers that do dynamic conversion based on the expected type.

Re-triage; important for other providers, including SQLite.


Client schema sample code for graphql-code-generator

@kamilkisiela
I was linked to a pull request you had when asking about the @client directive on the graphql-code-generator project.
Question issue
https://github.com/dotansimha/graphql-code-generator/issues/659#issuecomment-426608958
Your pull request
https://github.com/dotansimha/graphql-code-generator/pull/561
Logging an issue here as it fairly specific to Apollo-Angular
Do you have sample code for how you create the schema you can read into graphql-code-generator when using apollo-state-link and the @client directive.
To import into Apollo I would do something like this:
clientside-schema.ts
import gql from 'graphql-tag';
export const clientSideSchema = gql`
  type CurrentTheme {
    theme: String!
  }

  type Mutation {
    updateCurrentTheme(theme: String!): CurrentTheme
  }

  type Query {
    currentTheme: CurrentTheme
  }
`;

GraphQL config for client state
...
  const localState = withClientState({
    defaults: {
      ...themeDefault
    },
    resolvers: {
      Mutation: {
        ...themeResolverMutation
      }
    },
    typeDefs: clientSideSchema
  });
...

package.json
    "generate-schema-frontend-client-schema": "rm -rf ./typings && gql-gen --schema http://localhost:4000/graphql --clientSchema ./src/app/clientside-schema.graphqls --template graphql-codegen-typescript-template --out ./typings/ \"./src/**/*.ts\""```

This is all in a sample repo under the Apollo branch here:

https://github.com/vespertilian/wallaby-angular-node-yarn-workspaces/tree/apollo

Any help appreciated.
Thanks

import gql from 'graphql-tag';

// you can export it as schema variable
export const schema = gql`...`;

// or use export default
export default gql`...`

@kamilkisiela
Thanks for the quick reply.
I had tried that originally, I think, full example here:
https://github.com/vespertilian/wallaby-angular-node-yarn-workspaces/tree/apollo
I keep getting an error:
rm -rf ./typings && gql-gen --schema http://localhost:4000/graphql --clientSchema ./src/app/clientside-schema.ts --template graphql-codegen-typescript-template --out ./typings/ "./src/**/*.graphql.ts"
18:22:18.815 - info: Loading GraphQL Introspection from remote: http://localhost:4000/graphql...
18:22:18.821 - info: Loading GraphQL schema object, text, ast, or introspection json from JavaScript ES6 export: ./src/app/clientside-schema.ts...
18:22:18.823 - error: Unexpected token import
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Where it does not seem to like the import of GraphQL tag from in the TS file.
So I am still a bit stuck. Which is why I was hoping you had a sample, maybe it's an issue with one of my dependencies.
Thanks.

That's because you have to transpile ts files.
Try to add --require ts-node/register/transpileOnly
gql-gen --require ts-node/register/transpileOnly --schema http://localhost:4000/graphql --clientSchema ./src/app/clientside-schema.ts --template graphql-codegen-typescript-template --out ./typings/ "./src/**/*.graphql.ts"

Why transpileOnly? It will skip type checking so should be faster.

@kamilkisiela using<EMAIL_ADDRESS>require should be
--require ts-node/register/transpile-only


Question about data generation of RawVD

Thanks for the interesting paper with great details.
I am wondering if you have any plan to share the process of dataset generation, which is super beneficial to extends RawVD datasets for other enhancement tasks. For example, it would be great for people to have the parameters tuned for Canon ISP for rawpy to synthesize sRGB from raw.

Hi,
Since we plan to extend our dataset for other interesting topics, our group decided not to release the data generation codes for now. However, please check it constantly for potential updates.
Xiaohong

Cool, thanks! Looking forward to other great work extended from this topic!