fetchDidFail with StaleWhileRevalidate is not called

Library Affected:
workbox v5.1.3 npm
Browser & Platform:
Google Chrome v85
Issue or Feature Request Description:
I don't seem to get how to run some code when a fetch in a StaleWhileRevalidate strategy fails. I'd like to use the callback to detect offline usage, but fetchDidFail is not called when I tick "offline" and reload the pahe. (fetchDidSucceed works tho). Is this expected? I didn't find any mention of that in the documentation.
Here's an example:
const messageIfFail: WorkboxPlugin = {
    fetchDidFail: async function () {
        // No return expected.
        // NOTE: `originalRequest` is the browser's request, `request` is the
        // request after being passed through plugins with
        // `requestWillFetch` callbacks, and `error` is the exception that caused
        // the underlying `fetch()` to fail.
        while (true) {
            console.log("called");
        }
        // send message to client
    }
}

registerRoute(
    ({url}) => {
        return url.origin == "https://fonts.googleapis.com"
            || url.origin == "https://cdn.jsdelivr.net"
    },
    new StaleWhileRevalidate({
        cacheName: 'cdn',
        plugins: [
            messageIfFail
        ]
    })
);

@Lucide try to use in this way.
But I am not sure that fetchDidFail must run on cached response. Because original request get cached response and was closed. Copy of original request return response to cache.
fetchDidFail run`s only on fail of original request.

I see, together with fetchDidSucceed, they get only get called when the cache is being populated. I think that even if the code underneath answers the original requests, the callback mentions "fetch", not response. The fetch callbacks should behave like they do in NetworkFirst, because we have the guarantee a network fetch will always be made.
Especially if they do get called the first run. StaleWhileRevalidate should theoretically behave the same with or without network, shouldn't it? Regardless of implementation optimizations.
I'll probably need to use the snipped you linked anyway, because I'd like to send a targeted message, and Mozilla does it like this:
addEventListener('fetch', event => {
  event.waitUntil(async function() {
    // Exit early if we don't have access to the client.
    // Eg, if it's cross-origin.
    if (!event.clientId) return;

    const client = await clients.get(event.clientId);
    if (!client) return;

    // Send a message to the client.
    client.postMessage({
      msg: "Hey I just got a fetch from you!",
//...

Workbox doesn't expose the event to plugins.
But how would that solve the fetch issue? It's still being done inside the strategy. I can't access it, can I?

@Lucide I think you must use Broadcast-update strategy. And handle update response inside your app.
But I am not sure, that this will work in safari.

I've seen that, but I think a simple targeted message will be neater. But that's off-topic, the issue is to when to send that message.
I'd like for StaleWhileRevalidate to support fetch callbacks.

@Lucide it fires only in case, where fetch failed and cache not found.

Aright. I find that to be a bit misleading tho. Because it mentions "fetch" specifically, "request" might be better? Maybe some more explanatory lines in the docs. Thank you!

I started trying to tweak a StaleWhileRevalidate strategy but got a bit overwhelmed.
Maybe instead of fetchDidFail I could use cacheDidUpdate. If there's no cache writing optimization, a cache write means a network response arrived. (I suppose requestWillFetch is useless as well here).
So, I tried this:
registerRoute(
    ({url}) => {
        return url.origin == "https://fonts.googleapis.com"
            || url.origin == "https://cdn.jsdelivr.net"
    },
    ({event}) => {
        const {request} = event as FetchEvent;
        return new StaleWhileRevalidate({
            cacheName: "cdn",
            plugins: [
                {
                    requestWillFetch: async function () {
                        // i have access to the event to send a targeted message
                       console.log(event as FetchEvent);
                    }
                }
            ]
        }).handle({event, request});
    });

I get:
The FetchEvent for<EMAIL_ADDRESS>resulted in a network error response: the promise was rejected.
Promise.then (async)
(anonymous) @ sw.js:655
index.html:6 GET<EMAIL_ADDRESS>net::ERR_FAILED
sw.js:265 Uncaught (in promise) no-response: The strategy could not generate a response for<EMAIL_ADDRESS>The underlying error is TypeError: Cannot read property 'clone' of undefined.
    at StaleWhileRevalidate.handle (http://localhost:63342/font-atlas-generator/sw.js:3911:23)
WorkboxError @ sw.js:265
handle @ sw.js:3911

sw.js:377 workbox Router is responding to: https://fonts.googleapis.com/css2?family=Open+Sans&display=block
sw.js:377 workbox Using StaleWhileRevalidate to respond to 'https://fonts.googleapis.com/css2?family=Open+Sans&display=block'
The FetchEvent for "https://fonts.googleapis.com/css2?family=Open+Sans&display=block" resulted in a network error response: the promise was rejected.
Promise.then (async)
(anonymous) @ sw.js:655
sw.js:265 Uncaught (in promise) no-response: The strategy could not generate a response for 'https://fonts.googleapis.com/css2?family=Open+Sans&display=block'. The underlying error is TypeError: Cannot read property 'clone' of undefined.
    at StaleWhileRevalidate.handle (http://localhost:63342/font-atlas-generator/sw.js:3911:23)
WorkboxError @ sw.js:265
handle @ sw.js:3911
main.css:1 GET https://fonts.googleapis.com/css2?family=Open+Sans&display=block net::ERR_FAILED

I don't detect any network/CORS error, It used to work fine before the modification.
Am I doing something wrong here?

@Lucide requestWillFetch must return Request object.

fetchDidFail will execute when the underlying fetch() fails when using StaleWhileRevalidate, even if the strategy ends up using a response from the Cache Storage API.
I see from your sample route that you're attempting to use this with subresources loaded from a CDN, and in most cases, responses to those sorts of URLs will use long-lived Cache-Control headers that don't require revalidation. So what my guess is as to what's happening is that even when you're offline, the underlying fetch() request succeeds, rather than fails, since a cache hit in the browser's "normal" HTTP cache is sufficient, and fetch() never ends up going against the network anyway.
You can see this in action at https://glitch.com/edit/#!/upbeat-rebel-octopus?path=sw.js, where the example is for a HTTP response that has a maximum age of 20 seconds. If you go offline and try again within 20 seconds of populating the "normal" HTTP cache with a response, then the fetch() will be fulfilled from the HTTP cache. If you wait longer than 20 seconds, then the response in the HTTP cache will be considered too old to use without revalidation, and the fetch() will fail when it makes the network request to revalidate.
I'm going to close this for now, but if I'm misinterpreting anything, let me know and we can revisit.

@TheForsakenSpirit So sorry! Changed the code without re-checking.
@jeffposnick Very well, I've seen some responses have 80000+ seconds on max-age, but that's ok, I don't actually need to detect the connection status, just signal the app went to "offline mode". Until an http cached response expires, I can consider it indistinguishable from online work.

Only this route is affected. (I also have the recommended route for Google Fonts font files, but it has never given errors as now. I clear the application data regularly during testing)
The FetchEvent for<EMAIL_ADDRESS>resulted in a network error response: an "opaque" response was used for a request whose type is not no-cors
normalize.min.css:1 Failed to load resource: net::ERR_FAILED
sw.js:377 workbox Precaching is responding to: /font-atlas-generator/build/css/main.css
sw.js:377 workbox Using StaleWhileRevalidate to respond to 'https://fonts.googleapis.com/css2?family=Open+Sans&display=block'
The FetchEvent for "https://fonts.googleapis.com/css2?family=Open+Sans&display=block" resulted in a network error response: an "opaque" response was used for a request whose type is not no-cors
css2:1 Failed to load resource: net::ERR_FAILED

This happens randomly, when opening the browser. If it occurs, it doesn't go away until the app data is cleared. I have no Idea why. Normally cross-origin requests are correctly stored as "cors". (Only if made explicit through html).
This one breaks the sw functionality.

workbox Network request for<EMAIL_ADDRESS>threw an error.  TypeError: Failed to fetch
print @ sw.js:377
(anonymous) @ sw.js:390
wrappedFetch @ sw.js:2641
async function (async)
wrappedFetch @ sw.js:2550
_getFromNetwork @ sw.js:3945
handle @ sw.js:3885
(anonymous) @ sw.js:4019
handleRequest @ sw.js:786
(anonymous) @ sw.js:653
sw.js:1 Uncaught (in promise) TypeError: Failed to fetch
sw.js:377 workbox Using StaleWhileRevalidate to respond to 'https://fonts.googleapis.com/css2?family=Open+Sans&display=block'
sw.js:1 Uncaught (in promise) TypeError: Failed to fetch

This happens instead when the app is offline and the http cache is disabled ("Disable Cache" ticked). This is the longer "development", the same errors appears in "production" mode too. The same errors show up in a completely generated sw.
Since service workers exist to provide offline support, I'm surely missing something here.
This is the code I'm using:
registerRoute(
    ({url}) => {
        return url.origin == "https://fonts.googleapis.com"
            || url.origin == "https://cdn.jsdelivr.net"
    },
    ({event}) => {
        const {request} = event as FetchEvent;
        return new StaleWhileRevalidate({
            cacheName: "cdn",
            plugins: [
                {
                    fetchDidFail: async function () {
                        //...
                    }
                }
            ]
        }).handle({event, request});
    });

setCatchHandler(async () => { //doesn't get called in my situation
    console.log("TEST");
    return Response.error();
});

@Lucide recourse called by fetch or by html tag?
If second try add crossorigin="anonymous"

Both inside  of index:
<link crossorigin="anonymous" rel="stylesheet"<EMAIL_ADDRESS><link crossorigin="anonymous" rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans&display=block">

When attempting to debug this, I would suggest starting fresh from an Incognito window, and additionally, not checking Disable Cache. It sounds like you've made a number of changes to your SW during development, and it would be good to rule out inconsistent cache state (using the Incognito window) while also replicating what users will actually see in production (don't check Disable Cache).
You might see a log message about a failed fetch() made by StaleWhileRevalidate in development, but if the strategy uses a cached response from the Cache Storage API to satisfy the request, the "catch" handler won't run. The "catch" handler only runs when there's no response (from fetch() or Cache Storage API) that can be used by a strategy.
FWIW, your code could be simplified to:
registerRoute(
    ({url}) => {
        return url.origin === "https://fonts.googleapis.com"
            || url.origin === "https://cdn.jsdelivr.net"
    },
    new StaleWhileRevalidate({
      cacheName: 'cdn',
      plugins: [...],
    })
});

setCatchHandler(async () => { //doesn't get called in my situation
    console.log("TEST");
    return Response.error();
});

Thank you for the clarifications
I keep getting the first error, even when I don't touch the sources. I just need to keep reopening the page and sooner or later it breaks, and I need to wipe the cache storage to get it working again.
I'm not using "disable Cache" to affect the cache storage, it just disables the http cache.
To clear the cache storage and DBs, I use the dedicated panel in Chrome "Clear Storage". It clears pretty much everything and it's designed to be used when working with service workers.
I need to disable the http cache to simulate a true offline experience, since the max-age in the cdn headers are extremely high.
I'm aware that the worker currently doesn't clean up the cache on activation (update), but the error shows up randomly just by opening the page, not only during an sw update.
The second problem occurred with generated service workers too. For the same two origins. It's not a log entry, it's an uncaught js exception. I didn't understand how to handle it.
The sw is tiny and the entire source can be posted here:

sw.js
import {registerRoute, setCatchHandler} from "workbox-routing";
import {CacheableResponsePlugin} from "workbox-cacheable-response";
import {ExpirationPlugin} from "workbox-expiration";
import {precacheAndRoute} from 'workbox-precaching';
import {setCacheNameDetails} from "workbox-core"
import {StaleWhileRevalidate, CacheFirst} from "workbox-strategies";

declare var self: ServiceWorkerGlobalScope;
export {};

setCacheNameDetails({
    prefix: "font-atlas-generator",
})

precacheAndRoute(self.__WB_MANIFEST);

registerRoute(
    ({url}) => {
        return url.origin == "https://fonts.googleapis.com"
            || url.origin == "https://cdn.jsdelivr.net"
    },
    new StaleWhileRevalidate({
        cacheName: "cdn",
        plugins: [
            {
                fetchDidFail: async function ({event}) {
                    if (!event) return;
                    const fetchEvent = event as FetchEvent;
                    if (!fetchEvent.clientId) return;
                    const client = await self.clients.get(fetchEvent.clientId);
                    if (!client) return;
                    client.postMessage({
                        msg: "offline"
                    });
                }
            }
        ]
    })
);

registerRoute(
    ({url}) => url.origin == "https://fonts.gstatic.com",
    new CacheFirst({
        cacheName: 'google-fonts-webfonts',
        plugins: [
            new CacheableResponsePlugin({
                statuses: [0, 200],
            }),
            new ExpirationPlugin({
                maxAgeSeconds: 60 * 60 * 24 * 365,
                maxEntries: 30,
            }),
        ],
    })
);

setCatchHandler(async () => {
    return Response.error();
});

I opened the page on a different machine where the service worker had never run, and I've seen the error can happen between reloads too (not only start-on-open). The first three times it worked right, the fourth failed.
No service worker-powered versions of the app had ever ran on this pc. I'm lost!

I've ran the app in Firefox, to see if I could gather something more. It says
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at<EMAIL_ADDRESS>(Reason: CORS request did not succeed).

GET<EMAIL_ADDRESS>
Failed to load<EMAIL_ADDRESS>A ServiceWorker passed an opaque Response to FetchEvent.respondWith() while handling a ‘cors’ FetchEvent. Opaque Response objects are only valid when the RequestMode is ‘no-cors’. sw.js:1853:26

GET https://fonts.googleapis.com/css2?family=Open+Sans&display=block

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://fonts.googleapis.com/css2?family=Open+Sans&display=block. (Reason: CORS request did not succeed).

Failed to load ‘https://fonts.googleapis.com/css2?family=Open+Sans&display=block’. A ServiceWorker passed an opaque Response to FetchEvent.respondWith() while handling a ‘cors’ FetchEvent. Opaque Response objects are only valid when the RequestMode is ‘no-cors’.

A Learn More link sends here, where it talks about general network/http errors, but I don't think that's the case. Neither are adblockers, because chrome with external debugger starts blank, and my "Firefox Developer Edition" installation is blank.
Given that, I got the cors error quite often on Firefox before writing this comment, now it's ten minutes I'm fiddling with the page and it hasn't shown up since.
Firefox doesn't give the offline "uncaught exception" error.
Should I open a new issue dedicated to these two, rename this one, or else?


Fix VSCode integration

The .vscode folder was taken from the boilerplate at the beginning and never updated − and it's broken.
Fixing it (and updating README.md) might help new contributors.

Everything in the .vscode working perfectly and no need to change it .
It divides into three sections and each section as follow up:
The first section appears to define a debug configuration for attaching to a GDB server, with specific settings for the executable, target port, and initial commands to run.
The second section contains various settings for the editor and the C/C++ extension.
The third section defines a set of build tasks, including options for building, debugging, cleaning, loading, and running unit tests and Speculos (a cryptocurrency wallet emulator).


[ArPow] Add missing sourcebuild graph dependencies for sdk

These dependencies are important for two main reasons.

It determines the build order and therefore dependency flow in source-build
During the repo builds, the intermediate sourcebuild packages for these dependencies will be used.  This eliminates prebuilts and will aid in the prebuilt detection UX at the repo level.

Repo
Missing Dependency
Version.Details Dependency   Missing

sdk
msbuild

sdk
nuget.client

sdk
roslyn-analyzers

sdk
runtime

sdk
source-build

sdk
xliff-tasks
x

sdk
vstest

This work was completed in 6.0 as part of the ArPow work.


feat: Install LiteLLM by default

Currently ragbits and ragbits-core are installed without installing LiteLLM (which requires explicitely installing ragbits[litellm].
Motivation

Ragbits requires LiteLLM to do almost anything useful (besides more advanced use cases of running local LLMs)
After #154, Ragbits is comes pre configured with default LLM values which use LiteLLM. This currently leads to Ragbits not being able to use its own defaults by default ;)

Steps

ragbits-core should list LiteLLM as its direct dependency.
Conditional imports of litellm should be changes to regular imports
All places that mention ragbits[litellm] in the documentation (e.g., Quickstart 1) should be adjusted accordingly

I totally agree! I'll go ahead and add it to https://github.com/deepsense-ai/ragbits/milestone/8. It looks like a great improvement for a small effort.


Make modifiers non-optional in writeMessage()

An empty modifiers array in writeMessage() should have the same behavior as nil array. Removing the optionality of the array simplifies the implementation of the protocol.
This is a breaking change to a public protocol. It's understandable to hold off on this change until the next major release. I'm open to feedback / discussion over whether this change is warranted.

Hi @ejensen,
Thanks for putting this together. We agree that this is a good change, but we're actually going to be removing the modifiers array from the protocol altogether in Willow 4. Modifiers are no longer going to be part of a configuration. They are instead going to be part of the writers if writers decide they want to support them.
Anyways, these changes will no longer be necessary in Willow 4. I'm going to go ahead and close this PR out. If you have additional questions, feel free to comment back or ping me on Slack to discuss Willow 4 in more depth.
Cheers. 🍻


Improve player UI

I found that if the list of queued songs is Long then every time an new song started it pings all users whoever added an song in that list.
So my suggestion is to hide the queued or playlist of song list under an button. When an user click on that button only then full list will be shown.
The UI i am suggesting is kinda look like as described below:
Currently Playing Song
Songname: Name of song
Duration: song total timing
Requested_by: username
Below this text are total 3 buttons
In first line there must be 2 buttons.
• 1st button is Playlist which all group members can use.
• 2nd button is Skip button which only sudo users can use, for non sudo users show an popup message telling "you are not allowed to use this".
These above 2 buttons must be in 1 line
• Below these there is 3rd button named Player controls which opens the new sub menu which contains player functions like pause/resume, stop, mute/unmute, join/leave VC, etc . This button only can be usable by sudo users.
• Do add an Back button on each submenu level to go back on main player menu.

Try


RuntimeError: the sip module implements API v12.0 to v12.8 but the PyQt5.QtCore module requires API v12.9

I was following the steps in the README and everything worked fine until I got to the last step: running it. I got this large error:
(venv) D:\Documents\Coding\Python\Voice Cloner>python demo_toolbox.py
Traceback (most recent call last):
  File "D:\Documents\Coding\Python\Voice Cloner\demo_toolbox.py", line 2, in <module>
    from toolbox import Toolbox
  File "D:\Documents\Coding\Python\Voice Cloner\toolbox\__init__.py", line 1, in <module>
    from toolbox.ui import UI
  File "D:\Documents\Coding\Python\Voice Cloner\toolbox\ui.py", line 1, in <module>
    import matplotlib.pyplot as plt
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\pyplot.py", line 2500, in <module>
    switch_backend(rcParams["backend"])
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\__init__.py", line 621, in __getitem__
    plt.switch_backend(rcsetup._auto_backend_sentinel)
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\pyplot.py", line 257, in switch_backend
    switch_backend(candidate)
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\pyplot.py", line 277, in switch_backend
    class backend_mod(matplotlib.backend_bases._Backend):
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\pyplot.py", line 278, in backend_mod
    locals().update(vars(importlib.import_module(backend_name)))
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 11, in <module>
    from .backend_qt5 import (
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\backends\backend_qt5.py", line 13, in <module>
    import matplotlib.backends.qt_editor.figureoptions as figureoptions
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\backends\qt_editor\figureoptions.py", line 11, in <module>
    from matplotlib.backends.qt_compat import QtGui
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\backends\qt_compat.py", line 174, in <module>
    _setup()
  File "C:\Users\pwill\AppData\Local\Programs\Python\Python39\lib\site-packages\matplotlib\backends\qt_compat.py", line 79, in _setup_pyqt5
    from PyQt5 import QtCore, QtGui, QtWidgets
RuntimeError: the sip module implements API v12.0 to v12.8 but the PyQt5.QtCore module requires API v12.9

What did I do wrong? I'm not sure what the sip module is, or what the error actually means.

Please follow my guide to install Python 3.7.9, and then try the installation steps again.
Either uninstall Python 3.9 first, or adjust the PATH variables so the 3.7.9 installation takes precedence over 3.9 if you want to keep it. The specific versions of installed packages differ with the Python version so it is best to pick a proven one to minimize these sorts of errors.

Using 3.7 worked. Thanks.


Exit Codes

Currently, the wy command doesn't appear to set the exit codes correctly.  This means the build never fails.

See: https://github.com/Whiley/WhileyCompilerCollection/issues/40


Allow to configure an index sort key for early termination of search requests

Problem Statement
In Lucene/CrateDB, segments are not sorted by default.
Case 1: ORDER BY with LIMIT
Queries that apply an ORDER BY with LIMIT need to go through all segments and can apply the ordering only after the Collect:
SELECT *
FROM t
ORDER BY ts
LIMIT 100;

/**
Fetch[ts, a, b, c] (rows=unknown)
  └ Limit[100::bigint;0] (rows=unknown)
    └ OrderBy[ts ASC] (rows=unknown)
      └ Collect[doc.t | [_fetchid, ts] | true] (rows=unknown)
**/

Case 2: Multi-timestamp data model
Some data models have two timestamps: An event timestamp (when the record was generated) and an insertion timestamp (when it arrived in the database). There can be significant gaps between the timestamps. Partitioning is based on the event timestamp, but sometimes the latest record based on the insertion timestamp needs to be retrieved and requires to hit all partitions. Since segments aren't sorted, CrateDB needs to go through the entire table.
Possible Solutions
Support configuring a sort key for segments as described in ElasticSearch's Index Sorting:

When creating a new index in Elasticsearch it is possible to configure how the Segments inside each Shard will be sorted. By default Lucene does not apply any sort.
[...]
Early termination of search request
By default in Elasticsearch a search request must visit every document that matches a query to retrieve the top documents sorted by a specified sort. Though when the index sort and the search sort are the same it is possible to limit the number of documents that should be visited per segment to retrieve the N top ranked documents globally.

Other solutions use Z-ordering, such as (Azure) Databricks.
Considered Alternatives
No response

Could you add some info about:

Response times you're seeing (vs. what would be desired)
Table size
Ideally a flamegraph or JFR profile

Just to ensure that this would be addressing the right bottleneck

For the second case, I can provide some performance details.
The table is defined as:
CREATE TABLE t1 (
   "measurement_id" VARCHAR(256) NOT NULL,
   "type" VARCHAR(256) NOT NULL,
   "metric_id" VARCHAR(256) NOT NULL,
   "data_version" INTEGER NOT NULL,
   "owner" VARCHAR(256) NOT NULL,
   -- Around 40 VARCHAR/DOUBLE columns, exact schema can be shared privately
   "ts" TIMESTAMP NOT NULL,
   "ts_week" TIMESTAMP GENERATED ALWAYS AS date_trunc('week', "ts") NOT NULL,
    PRIMARY KEY ("measurement_id", "type", "metric_id", "ts", "data_version", "owner", "ts_week")
)
CLUSTERED INTO 48 SHARDS
PARTITIONED BY ("ts_week");

Each partition is ~830 GiB in size. It can be observed that the query below becomes slower the more partitions are added, even though the top 100 rows needed for the result set are only in the latest partition:
SELECT *
FROM t1
WHERE ts_week IN (...)
ORDER BY ts DESC
LIMIT 100;

ts_week IN<PHONE_NUMBER>000): 3,2 seconds
ts_week IN<PHONE_NUMBER>000,<PHONE_NUMBER>000): 5,9 seconds
ts_week IN<PHONE_NUMBER>000,<PHONE_NUMBER>000,<PHONE_NUMBER>000): 8,7 seconds

The expectation is that performance is in the milliseconds range when querying only one partition, and increases linearly (or better) when adding additional (older) partitions.


SPSite: Microsoft.SharePoint.SPSite Constructur returns $null when run as Ressource

Problem description
When the Get-TargetResource Function tries to load an existing site collection it always returns $null when run by the LCM:
https://github.com/dsccommunity/SharePointDsc/blob/13408f4f835eeca0e598f093b4f20d1afefd4623/SharePointDsc/DSCResources/MSFT_SPSite/MSFT_SPSite.psm1#L76-L85
Verbose logs
VERBOSE: Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = ResourceGet,'className' = MSFT_DSCLocalConfigurationManager,'namespaceName' = root/Microsoft/Windows/DesiredStateConfiguration'.
VERBOSE: An LCM method call arrived from computer ServerName with user sid <SID>.
VERBOSE: [ServerName]:                            [[SPSite]DirectResourceAccess] Getting site collection https://sharepoint.contoso.com/sites/MySiteCollection
VERBOSE: [ServerName]:                            [[SPSite]DirectResourceAccess] Executing as the local run as user DOMAIN\DSCRunAsAccount
VERBOSE: [ServerName]:                            [[SPSite]DirectResourceAccess] Site Collection not found
VERBOSE: [ServerName]: LCM:  [ End    Get      ]  [[SPSite]DirectResourceAccess]  in 0.2780 seconds.
VERBOSE: [ServerName]: LCM:  [ End    Set      ]    in  0.3410 seconds.
VERBOSE: Operation 'Invoke CimMethod' complete.

ConfigurationName        :
DependsOn                :
ModuleName               : SharePointDSC
ModuleVersion            : 5.4.0
PsDscRunAsCredential     :
ResourceId               :
SourceInfo               :
AdministrationSiteType   :
CompatibilityLevel       :
ContentDatabase          :
CreateDefaultGroups      :
Description              :
HostHeaderWebApplication :
Language                 :
Name                     :
OwnerAlias               :
OwnerEmail               :
QuotaTemplate            :
SecondaryEmail           :
SecondaryOwnerAlias      :
Template                 :
Url                      : https://sharepoint.contoso.com/sites/MySiteCollection
PSComputerName           : localhost

DSC configuration
SPSite SiteCollection
{
    PsDscRunAsCredential = $cred
    Url = 'https://sharepoint.contoso.com/sites/MySiteCollection'
    OwnerAlias = 'Domain\Username'
}

Suggested solution
Switch to $site = Get-SPSite -Identity $params.Url -ErrorAction SilentlyContinue
SharePoint version and build
SharePoint Server Subscription Edition 16.0.17928.20238

Operating system the target node is running
OsName               : Microsoft Windows Server 2022 Datacenter
OsOperatingSystemSKU : DatacenterServerEdition
OsArchitecture       : 64-bit
WindowsVersion       : 2009
WindowsBuildLabEx    : 20348.1.amd64fre.fe_release.210507-1500
OsLanguage           : en-US
OsMuiLanguages       : {en-US}

PowerShell version and build the target node is running
Name                           Value
----                           -----
PSVersion                      5.1.20348.2760
PSEdition                      Desktop
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
BuildVersion                   10.0.20348.2760
CLRVersion                     4.0.30319.42000
WSManStackVersion              3.0
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>

SharePointDsc version
Name          Version Path
----          ------- ----
SharePointDSC 5.4.0   C:\Program Files\WindowsPowerShell\Modules\SharePointDSC\5.4.0\SharePointDSC.psd1

I found the PR #904 which explains the reason. Since its from 2018 - did a patch change that behaviour?
I got the bug on two SP Subscription Edition Farms. I'll test on 2016 and 2019 if they have the same issue.

SharePoint 2016 and 2019 works fine.

Has been a while, so had to think hard what the reasoning was. Fortunately I documented this in PR 904 😉
Just to get things clear: The current code works on 2016 and 2019, but doesn't work properly on SPSE. Is that correct?
If so, we can add a check to see if SPSE is used and in that case use Get-SPSite. But when 2016 or 2019 is used, use the current code.

Has been a while, so had to think hard what the reasoning was. Fortunately I documented this in PR 904 😉

Indeed :)

Just to get things clear: The current code works on 2016 and 2019, but doesn't work properly on SPSE. Is that correct?

Yes, it works on 2016 and 2019, but not on SPSE - at least my environments.

If so, we can add a check to see if SPSE is used and in that case use Get-SPSite. But when 2016 or 2019 is used, use the current code.

Good Idea, i'll use the following if statement, from the SPDistributedCacheService Resource.
https://github.com/dsccommunity/SharePointDsc/blob/13408f4f835eeca0e598f093b4f20d1afefd4623/SharePointDsc/DSCResources/MSFT_SPDistributedCacheService/MSFT_SPDistributedCacheService.psm1#L152-L155

That is exactly what you need indeed. We have used this logic on several occasions in SPDsc to make sure we can do specific actions for a specific version. The SPInstallPrereqs resource for example, where we have to install the prereqs for each specific version of SharePoint.


ETSI ITS DENM ReferenceDenms extension flag problem

I am working with asn1c for half a year meanwhile. It's an excellent tool. Many thanks for it.
I may have found a generator bug now. The (ETSI ITS) DENM ASN.1 spec (attached) has a definition:
ReferenceDenms ::= SEQUENCE SIZE (1..8, ...) OF ActionID

It carries the extension marker. ActionID is a sequence of two elements, a complex type. In this combination it appears to be the only one of this kind in the entire DENM ASN.1 spec (and the imported ITS Common spec, included as integrated part in the attachment here).
In the C code produced by the asn1c generator for PER constraints I get
asn_per_constraints_t asn_PER_type_ReferenceDenms_constr_1 CC_NOTUSED = {
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	{ APC_CONSTRAINED,	 3,  3,  1,  8 }	/* (SIZE(1..8)) */,
	0, 0	/* No PER value map */
};

I encoded  with asn1c UPER and I tried to decode with http://asn1-playground.oss.com/ without success. ReferenceDenms (RoadworksContainer in AlacarteContainer) and everything hereafter is out of sync and asn1-playground reports an error.
I then manually added the extension flag:
asn_per_constraints_t asn_PER_type_ReferenceDenms_constr_1 CC_NOTUSED = {
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	{ APC_CONSTRAINED | APC_EXTENSIBLE,  3,  3,  1,  8 }	/* (SIZE(1..8)) */,
	0, 0	/* No PER value map */
};

And now it all works, asn1-playground is happy.
ITS DENM v1.2.2.asn.zip

Looks like function asn1constraint_pullup() calling _remove_extensions(arg, ct_expr, 1); removes extension part of constraint SIZE(1..8,...).
Though simply removing the calling of _remove_extensions(arg, ct_expr, 1); can add APC_EXTENSIBLE flag to asn_PER_type_ReferenceDenms_constr_1, it also break several regression tests when perform make check.
I don't have enough knowledge to verdict whether these regression tests need to be revised ? Or asn1constraint_pullup() should only call _remove_extensions(arg, ct_expr, 1); under certain condition ?

@velichkov do you have any idea why it would ever make sense to remove extensions if they were specified?
@vlm any comment here?
Thanks!

@mouse07410 , according to X.680, I.4.4, there must be some conditions that extension additions are to be discarded, but related code logic might need be revised.
I.4.4
Use of the Contained Subtype notation
A contained subtype may or may not be extensible, but when it is used in set arithmetic it is always treated as not extensible, and all its extension additions are discarded.

@brchiu the above seems to imply that the same ASN.1 file could produce encoding with member constraints either honored or dropped, depending on what format is used?

DENM v1.3.1 defines ReferenceDenms ::= SEQUENCE (SIZE(1..8, ...)) OF ActionID. Please note the additional parentheses around SIZE(1..8, ...) compared to the original definition given by @MemoTrap.
Interestingly, asn1c seems to add APC_EXTENSIBLE only if these parentheses are present while other tools such as ffasn1c and https://asn1.io/asn1playground/ are less picky.
To be honest, I don't know at the moment which one is right.


.Net: Anthropic - samples

#5690
Added samples
@RogerBarreto

@Krzysztof318, thanks for the contribution!
Please update the README.md with the link to your new COncepts.
I also suggest to add your Anthropic Connector as one new connector for the AIRouterDemo project within Demos.

@Krzysztof318
https://github.com/microsoft/semantic-kernel/tree/main/dotnet/samples/Demos/AIModelRouter

Thanks, I had such issue with branch, so that's why I couldn't find that.


Asynchronous containerisation, add support for global configuration and cli flags

This PR makes Dunner a complete cli tool, which means that now the tool will have the ability to read configuration from host environment variables and has flags that can be used to control/override those configurations.

Support for async mode where image pull as well as containerisation are concurrent.
Add support for verbose mode.
Support for global configuration for the project using viper.
Add flags and bind viper configuration with them.
Supported flags:

--verbose or -v :  Verbose mode
--async or -A :  Asynchronous mode
--task-file or -t path/to/taskfile : Task file

Help page for root command
➜  Dunner git:(async-containerisation) ./dunner --help
You can define a set of commands and on what Docker images these commands should run as steps. A task has many steps. Then you can run these tasks with 'dunner do nameoftask'

Usage:
  dunner [flags]
  dunner [command]

Available Commands:
  do          Do whatever you say
  help        Help about any command
  version     Print the version number of Dunner

Flags:
  -h, --help               help for dunner
  -t, --task-file string   Task file to be run (default ".dunner.yaml")
  -v, --verbose            Verbose mode

Use "dunner [command] --help" for more information about a command.

Help page for do command
➜  Dunner git:(async-containerisation) ./dunner do --help
You can run any task defined on the '.dunner.yaml' with this command

Usage:
  dunner do [taskName] [flags]

Flags:
  -A, --async   Async mode
  -h, --help    help for do

Global Flags:
  -t, --task-file string   Task file to be run (default ".dunner.yaml")
  -v, --verbose            Verbose mode

Please review @agentmilindu @rehrumesh @rhperera.


"In x minutes" should say "In roughly x minutes" during transaction sync, time varies significantly between blocks

Otherwise it may confuse the user into thinking it's an exact amount when in reality it's a (very rough) estimation. Once it passes it's estimation on the final block, it begins to say "x minutes ago", which doesn't make sense.
Also on the daemon side: to review why avgBlockTime varies so signficantly between blocks (This is the value that's used to estimate the time until sync).

Maybe just put the In ~x minutes.

For "Average Days for Payout", we can go with this logic:
Average days for payout = Number of Enabled Nodes / 288 blocks per day (average).
Number of Enabled nodes can be obtained from znode count all.

Updated avgBlockTime to return general average blocktime over the "n block estimate" currently in place. This is sufficient for what we are using it for and is an efficiency improvement. https://github.com/zcoinofficial/zcoin/commit/91f60cfdffcedaf39d733067aab9af674318379b


Programmatically Toggle Drawer: Button not working if drawer toggle isn't rendered on load

I'm using next.js with tailwind + flowbite. The button I use to toggle my drawer is not rendered until some file uploads on the page happen. However, it appears that once the button loads after the conditions are met it is unable to connect to the drawer class. Is there a way I can trigger the drawer with a function call?

I've faced a similar issue, in which the button didn't trigger to open the drawer, this seems to be an issue with using flowbite with next.js.
Cause interactive components requires js from flowbit.
You can see related issues here
https://github.com/themesberg/flowbite/issues/51
The solution for me is to `import 'flowbite' in _app.tsx/jsx.
Hope this helps!


Teradata support

Support for working with Teradata

Seconded, is there a timeline for Teradata support?

We don't have a timeline at the moment, but would love help from the community on this. We're working on a document that describes the process for adding connectors.

Would be happy to contribute since my company uses Teradata heavily - looking forward to working with the doc that describes how to add connectors!  Also, wondering if a more generic JDBC connector would be in the cards?


add staking pool Bit Cat

awaiting #12 to be merged in order to respect FIFO, will ping the owner again and if not will merge yours first ✅

Hi Bitcat @wjdfx , thank your for your submission. Don't forget to star the repo ;)


lint: enable linter & fix formatting issues

This also rewords some comments to avoid triggering weird smart quote behavior in gofmt.

(rebase to pull in new schema)

Requested re-approval - bumped to golangci-lint v1.51.2 which came out in the interim and fixed the Windows issue (need a .gitattributes apparently): https://github.com/compose-spec/compose-go/compare/5ac7b63bb1080a77ad4a20cfff6f202cd103dd92..497296ffa772a1660dc77d98439b39d5ac0b8ad0


Godot Closes when restoring a minimized floating script editor window

Godot version
4.1 - stable
System information
Godot v4.1.stable - Windows 10.0.22621 - Vulkan (Compatibility) - Intel(R) HD Graphics 4400 () - Intel(R) Core(TM) i5-4300U CPU @ 1.90GHz (4 Threads)
Issue description
Godot Closes when restoring a minimized floating script editor window
Steps to reproduce
Enable floating script window

minimize the window and try restoring it.
https://github.com/godotengine/godot/assets/104901333/3727a6e9-d22c-4ef5-99f8-4fec39224569
Minimal reproduction project
Engine based problem

Do you have the Save on Focus Loss editor setting enabled?

No i don't
On Mon, 17 Jul 2023, 10:39 Hugo Locurcio, @.***> wrote:

Do you have the Save on Focus Loss editor setting enabled?
—
Reply to this email directly, view it on GitHub
https://github.com/godotengine/godot/issues/79575#issuecomment-1637703117,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AZAKVVMV7C7Z6HP3OQRFQPLXQUB43ANCNFSM6AAAAAA2MVQEN4
.
You are receiving this because you authored the thread.Message ID:
@.***>

Same problem, if you minimize the floating scripts window and try to expand it, the editor closes completely.
Windows 10.

I just discovered another strange behavior:
If you make the scripts window float and minimize the main editor window, the entire Godot editor closes.

Windows 10 error logs:
Faulting application name: Godot.exe, version: <IP_ADDRESS>, time stamp: 0x00000000
Faulting module name: ig8icd64.dll, version: <IP_ADDRESS>26, time stamp: 0x5e279465
Exception code: 0xc0000005
Fault offset: 0x00000000001b5426
Faulting process id: 0x2780
Faulting application start time: 0x01d9d7817599bd44
Faulting application path: D:\Apps\Local\Godot4\Godot.exe
Faulting module path: C:\Windows\SYSTEM32\ig8icd64.dll
Report Id: 5cfb2a12-1e41-4deb-9994-b258519a125e
Faulting package full name:
Faulting package-relative application ID:

ig8icd64.dll is OpenGL driver for Intel graphics accelerator.
Apparently the problem is in the driver for the integrated graphics. I checked, I have the latest driver version, tried rolling back the driver version, checked 5 versions, but nothing helped.
Apparently it's the old integrated graphics that are the problem.
Everything works fine on Linux, on the same hardware.

In general, I ruled out hardware failure in the computer, conducted diagnostics at a service center, and the device is in good condition. I also tried it on a clean Windows 10 system; however, the error persists.
Ultimately, the issue seems to lie with the driver, most likely. As far as I understand, the error code 0xc0000005 is related to memory; the application can't read a region in the RAM or access is blocked. But I might be mistaken, as I'm not well-versed in this topic.
Could you perhaps recommend what else can be done to identify what exactly is causing this problem? Or maybe suggest reaching out to Intel or the device manufacturer?
It's possible that with the release of DirectX support, this issue might cease to appear for me...

It's possible that with the release of DirectX support, this issue might cease to appear for me...

Old Intel IGPs probably don't have Direct3D 12 support with the feature level required by https://github.com/godotengine/godot/pull/70315 though.

Trouble in general :)
It seems that I'll have to explore alternative solutions to the issue, possibly considering changing the operating system or upgrading the hardware.
Thank you for paying attention to this problem, I'm truly grateful.

The workaround for now is to disable multi-window mode:
Go to editor settings -> Interface -> Editor -> Single Window Mode: On
Then (optional) Interface -> Multi Window -> Enable: Off
I think issue can be closed, the engine side is unlikely to fix it, the driver side will definitely not fix it. The only true solution would be to update the hardware.

With the use of OpenGL ANGLE the problem disappeared, but more tests are needed.


Please update :)

blocked by https://github.com/mhsjlw/node-raknet/issues/9
I know how to do it but I have limited time and currently working on update flying squid
If you have more time, feel free to come to https://gitter.im/mhsjlw/pocket-minecraft-protocol?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge and I'll explain what needs to be done


[CDEC-350] Change RichmenComponent from type class to data

Description
The RichmenComponent was implemented as a type class with a bunch of Proxy parameters, rather than as a simple record type. One pointless type class down...

Linked issue
CDEC-350

Type of change

[~] 🐞 Bug fix (non-breaking change which fixes an issue)
[~] 🛠 New feature (non-breaking change which adds functionality)
[~] ⚠ Breaking change (fix or feature that would cause existing functionality to change)
[x] 🏭 Refactoring that does not change existing functionality but does improve things like code readability, structure etc
[~] 🔨 New or improved tests for existing code
[~] ⛑ git-flow chore (backport, hotfix, etc)

Developer checklist

[x] I have read the style guide document, and my code follows the code style of this project.
[x] If my code deals with exceptions, it follows the guidelines.
[x] I have updated any documentation accordingly, if needed. Documentation changes can be reflected in opening a PR on cardanodocs.com, amending the inline Haddock comments, any relevant README file or one of the document listed in the docs directory.

Testing checklist

[~] I have added tests to cover my changes.
[x] All new and existing tests passed.

QA Steps

Screenshots (if available)

Much more straightforward without that weird typeclass in there! :shipit:


Fix 6 multi table inheritance

Hi,
In response to this ticket: https://github.com/Opus10/django-pghistory/issues/6:
I've created a fix to improve AggregateEvent query to also retrieve the parents values and their related models in case of multiple and complex inheritance.
I've added a test to validate the changes, and I've run the formater and the linter.
Can you give me your feedback on these updates ?
Many thanks !

@pierreben thanks for the change. I'm having a hard time figuring out what is different though because there are very many style changes. Even all single quotes are changed to double quotes.
I think you might have ran black with a different configuration.
I'll see if I can revert some of these changes myself

@pierreben I removed the commit that did black formatting, and that seemed to clear up the diff quite a bit.
I'm not totally sure I follow how this works with aggregate event tracking, but give me some more time to play around with it and understand.
If I understand correctly, this is merging together the parents with the children in the aggregate events? I wasn't sure what was going on in that code

Hi @wesleykendall ,
Thank you for all the time you spent on reformatting the code, sorry that my editor applies black everywhere.
This is quite a complex subject, so I think the best to help is that I put comments on the changes directly to illustrate them.
Don't hesitate to tell me if after these comments you need more details !

@wesleykendall , I've tried to explain my updates as best as I could (sorry for my poor english).
I hope that it can help to understand how it works, don't hesitate to tell me if you need more details or explanations !

Hello @wesleykendall , I allow myself to follow up about this issue.
Don't hesitate to ask me for more details :)

Apologies for letting this PR get too stale. There have been many changes to pghistory since this and the original issue opened at https://github.com/Opus10/django-pghistory/issues/6
Although I don't think we have "full support" for concrete inheritance, there are ways to work around it for now mentioned at the end of that issue.
If people have other thoughts on how to better support concrete inheritance, please open a discussion and perhaps we can revisit this original PR if it still might solve inadequacies in the current version of pghistory


SendGrid email hosts field

When the hosts field is an array of strings rather than a single value, the SendGrid email does not enumerate them but instead lists the hosts as:
Hosts: System.String[]
Not a big deal but I thought I would flag it.
Great extension! Thanks so much.

Thank you, I fixed it here but didn't get a chance to put out a new release since then: https://github.com/ohadschn/letsencrypt-webapp-renewer/commit/f903626d0d5c33089598cc6af12b1ad19bfdfebf
You can build from source if you'd like the fix (maybe you can even take a binary from the CI, not sure how permissions work).

Thanks Ohad!
Timothy
On 2/24/2019 4:22 AM, Ohad Schneider wrote:

Thank you, I fixed it here but didn't get a chance to put out a new
release since then: f903626
https://github.com/ohadschn/letsencrypt-webapp-renewer/commit/f903626d0d5c33089598cc6af12b1ad19bfdfebf
You can build from source if you'd like the fix (maybe you can even
take a binary from the CI, not sure how permissions work).
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ohadschn/letsencrypt-webapp-renewer/issues/68#issuecomment-466769216,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABvEOGYpqqM64pBqRRSQuCg5TfgeATkGks5vQoP1gaJpZM4bI66L.


pre-warm view model cache for faster SPA applications

Quick change to get these cached warmed, so that you're not waiting on them when you load your Angular application for the first time.  Not a huge fan of the anon callbacks, can refactor later if desireed.

Works fine :+1:


build: replace node-sass with dart-sass

This replaces the node-sass dependency with dart-sass.
The node-sass wrapper and the underlying LibSass C/C++ library have been deprecated for a few years in favor of dart-sass which is now the reference implementation of Sass. The node-sass repo recommends moving on to dart-sass, as node-sass won't add any new feature and doesn't plan to remain compatible with new CSS and Sass features.
Another motivation is compatibility. On M1 Macs, node-sass is currently not supported out of the box. There are workarounds, but they're all hacky and hard to run with Yarn. The Dart implementation compiles to pure JavaScript, which makes the integration painless as it doesn't rely on native Node.js addons. On paper, it's supposed to be slower than node-sass (obviously) but I didn't notice anything significant when building.

Thanks a bunch @sarahdayan ! I didn't know about dart-sass !
I guess I let this project go without updates for a bit too long 😄


Applying custom styles to source blocks

Let's say I want to right a Best Practices guide and I want to use a role on source blocks when it's not recommended. For instance:
Never enter passwords in plain text on the CLI:

[source.dont,sh]
----
$ mvn --encrypt-master-password P@ssw0rd

$ mvn --encrypt-password P@ssw0rd
----

In this case, I want to apply a custom style to highlight the fact that the reader should not do that.
Is that possible?

This is essentially the same as #483. There's currently no framework/callback in place to apply overrides from a role to a block. But the challenge is knowing what to override, what the precedence to apply, and which blocks support which properties.

But the challenge is knowing what to override, what the precedence to apply, and which blocks support which properties.

Maybe I'm missing something but I think the role should  have a higher precedence right?
Not sure about the other type of blocks but for a listing block I think we can support every properties that are available on a role: https://github.com/asciidoctor/asciidoctor-pdf/blob/master/docs/theming-guide.adoc#role

background-color
border-color
border-offset
border-radius
border-width
font-color
font-family
font-size
font-style
text-decoration
text-decoration-color
text-decoration-width

Do you want to implement this feature once for all type of blocks or can I submit a pull request to implement this feature only on listing blocks?

Yes, the role would win. But sometimes the key is figuring out where to merge the properties in time for the code to access them. Because sometimes the code goes straight to the theme and then it would end up undoing a previously overridden value. In other words, how the theme properties are accessed has to change.

I would like #483 to be implemented first, because it's the simpler of the changes. And then we can do listing blocks after that...going further if the design allows.

I documented one way to accomplish this using an extended converter. See https://github.com/asciidoctor/asciidoctor-pdf/issues/959#issuecomment-1128668223

The technique for supporting roles per block type is now covered in the docs. See https://docs.asciidoctor.org/pdf-converter/latest/extend/use-cases/#theme-table-using-custom-role

@gemkod please direct questions about usage to the project chat at htttps://chat.asciidoctor.org. Thanks.


Rename README to README.md to fix preview in GitHub

Ah I was wondering why this was broken after the rename - thank you for finding this!


Update scala-logging to 3.9.5

Updates com.typesafe.scala-logging:scala-logging from 3.9.4 to 3.9.5.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (3.9.4).
You might want to review and update them manually.
dependency-check/dependency-check-report.html

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.typesafe.scala-logging", artifactId = "scala-logging" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "com.typesafe.scala-logging", artifactId = "scala-logging" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, old-version-remains, commit-count:1

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
90 unchanged lines in 8 files lost coverage.
Overall coverage decreased (-24.7%) to 51.374%

Files with Coverage Reduction
New Missed Lines
%

core/src/main/scala/io/aiven/guardian/kafka/Errors.scala
1
0%

cli-backup/src/main/scala/io/aiven/guardian/kafka/backup/App.scala
3
0%

core-cli/src/main/scala/io/aiven/guardian/cli/MainUtils.scala
4
0%

core-restore/src/main/scala/io/aiven/guardian/kafka/restore/KafkaProducer.scala
6
18.18%

restore-s3/src/main/scala/io/aiven/guardian/kafka/restore/s3/RestoreClient.scala
8
0%

core-backup/src/main/scala/io/aiven/guardian/kafka/backup/KafkaClient.scala
13
44.44%

core-backup/src/main/scala/io/aiven/guardian/kafka/backup/BackupClientInterface.scala
14
75.68%

backup-s3/src/main/scala/io/aiven/guardian/kafka/backup/s3/BackupClient.scala
41
0%

Totals

Change from base Build<PHONE_NUMBER>:
-24.7%

Covered Lines:
187

Relevant Lines:
364

💛  - Coveralls


Feature request: send Bugsnag reports asynchronous

Hi,
I was wondering if there was a way to send reports asynchronous. I'm submitting the issue here, because there is a simple tool that can be used with Laravel: the Laravel queue (Horizon). The problem right now is that we have requests taking 200ms to respond. Which could be less than 100ms if Bugsnag was sending report in the background. My idea was to using the queue to do this.
I was looking at the code (including the bugsnag/bugsnag-php repo) and it seems that there should be a QueueClient or LaravelClient class (build on top of HttpClient?). For every report added, a job should be dispatched to send the data to Bugsnag.
I would like to help implementing this feature, but I'm sure where to start. Thanks anyway!
(my apologies for my English).

Hi @rolfdenhartog
This seems like a sensible feature for our PHP libraries to support. We already support asynchronous delivery on many of our other platform error reporting libraries.
We'd want to carefully design this to ensure a consistent approach across our libraries, so we'd be unlikely to accept a PR at this point.
We'll raise as a feature request on our backlog though to investigate when we have the bandwidth.
Thanks!

Hey @rolfdenhartog
I recently looked at making our requests asynchronous with Guzzle's async capabilities, but hit an infinite loop (https://github.com/guzzle/guzzle/issues/2752) which wasn't possible to fix without a major refactor and breaking changes. Implementing a QueueClient also isn't really possible at the moment without major changes
We're looking at other ways to improve how we make HTTP requests, but it looks like this will need major changes to the bugsnag-php library. I'm closing this issue as we would ideally improve the situation for everyone, not just Laravel users, so hopefully there would be no need for a QueueClient
Thanks 🙂


Media Link

Add "Media" under the content area to lead to the photo/audio file management area now located in the sidebar instead of a modal.

@James-Dunn need assistance with it displaying all content areas at once instead of just the view of media currently available.


Why does a valueMap not have a specific termMap subclass?

Hi there,
In the RML+FnO spec, subject, predicate, parameter, [...] maps have an associated subclass of the termMap class.
I wonder what is the rationale behind not having a specific (termMap) subclass for value maps.

Given we don't introduce a definition for the object of a valueMap predicate different from the original TermMap definition, I guess there didn't seem to be a clear reason to introduce a new concept, but feel free to give feedback on that :)

I personally don't see a benefit, as the definition is exactly the same, but we can discuss during the bi-weekly :)

Is this still applicable since everything except Function Execution is now a Term Map?

It's still applicable. I personally think that having an additional class with the same definition is more misleading and unnecessarily constraining the ontology, but I don't think we reached consensus on that yet.

Adding the ExpressionMap as a "block" involving the execution and the output which are each defined as term maps, I think we have a good definition. Maybe we can conclude this issue if everyone agrees.

Consensus! Closing!


the out-of-date API

The VSCoq extention used the API "vscode.preview.html", however, which has been abandoned and  will be deleted.  Please update it to the webview API of VSCode. Thanks for your work!

Project's abandoned (see https://github.com/siegebell/vscoq/issues/167 for future plans by Coq devs), and the API's been removed in https://code.visualstudio.com/updates/v1_33.
Workaround: disable upgrades and follow instructions on https://stackoverflow.com/a/49347158/53974 to download the last working version (which should be https://code.visualstudio.com/updates/v1_32).


Display members as a table

This table should have the following columns :

Member name
Short pubkey
Join date
Membership expiration date

https://github.com/ucoin-io/cutecoin/commit/3fbd5951a4fa161f7e02e2ac24ad49481a2a10ec


fix(codebuild): detect branch names

It turned out that the branch name detection does not work on CodeBuild. The current version yields head.
This change adds a custom solution for CodeBuild which correctly detects the branch.
If have it running using this patched version of semantic-release.
I have verified that it works using a private project:

[Container] 2018/04/18 23:15:42 Running command npx semantic-release
[Semantic release]: Running semantic-release version 0.0.0-development
[Semantic release]: Load plugin verifyConditions from @semantic-release/npm
[Semantic release]: Load plugin verifyConditions from @semantic-release/github
[Semantic release]: Load plugin analyzeCommits from @semantic-release/commit-analyzer
[Semantic release]: Load plugin generateNotes from @semantic-release/release-notes-generator
[Semantic release]: Load plugin prepare from @semantic-release/npm
[Semantic release]: Load plugin publish from @semantic-release/npm
[Semantic release]: Load plugin publish from @semantic-release/github
[Semantic release]: Load plugin success from @semantic-release/github
[Semantic release]: Load plugin fail from @semantic-release/github
[Semantic release]: Run automated release from branch saga
[Semantic release]: Call plugin verify-conditions
[Semantic release]: Verify authentication for registry https://registry.npmjs.org/
[Semantic release]: Verify GitHub authentication
[Semantic release]: No git tag version found
[Semantic release]: No previous release found, retrieving all commits
[Semantic release]: Found 1 commits since last release
[Semantic release]: Call plugin analyze-commits
[Semantic release]: Analyzing commit: build(release): use patched version of env-ci
[Semantic release]: The commit should not trigger a release
[Semantic release]: Analysis of 1 commits complete: no release
[Semantic release]: There are no relevant changes, so no new version is released.

[Container] 2018/04/18 23:15:44 Phase complete: POST_BUILD Success: true
[Container] 2018/04/18 23:15:44 Phase context status code: Message:

Note: we are using a custom branch name there: saga

Can you provide the output of the following commands on CodeBuild:

git rev-parse --abbrev-ref HEAD
git rev-parse --abbrev-ref=strict HEAD
git rev-parse --abbrev-ref=loose HEAD
git branch
git branch -a

Thanks

To clarify I think this is because CodeBuild create a detached head repo. There might be other CI doing the same so I'd like to find a way to get the current branch that would work for every CI.

No, it did not:
[Semantic release]: Running semantic-release version 0.0.0-development
[Semantic release]: Load plugin verifyConditions from @semantic-release/npm
[Semantic release]: Load plugin verifyConditions from @semantic-release/github
[Semantic release]: Load plugin analyzeCommits from @semantic-release/commit-analyzer
[Semantic release]: Load plugin generateNotes from @semantic-release/release-notes-generator
[Semantic release]: Load plugin prepare from @semantic-release/npm
[Semantic release]: Load plugin publish from @semantic-release/npm
[Semantic release]: Load plugin publish from @semantic-release/github
[Semantic release]: Load plugin success from @semantic-release/github
[Semantic release]: Load plugin fail from @semantic-release/github
[Semantic release]: This test run was triggered on the branch HEAD, while semantic-release is configured to only publish from saga, therefore a new version won’t be published.

I used one of our private packages with this version of semantic release: https://github.com/nRFCloud/semantic-release/commit/dfa78d4909fb6a1d7376b88bdfc89f6c98bbbdaf

Ok thanks for the test. I tested on a repo with a detached head. I guess there is something different in the way CodeBuild clone the repo.
What do you get on CodeBuild with the command git show -s --pretty=%D HEAD ?
Also do you know what command is executed by CodeBuild to clone the repo?

I don't know, they don't show you the log, until the source is already available.
[Container] 2018/04/22 18:43:28 Running command git rev-parse --abbrev-ref HEAD
HEAD

[Container] 2018/04/22 18:43:29 Running command git rev-parse --abbrev-ref=strict HEAD
HEAD

[Container] 2018/04/22 18:43:29 Running command git rev-parse --abbrev-ref=loose HEAD
HEAD

[Container] 2018/04/22 18:43:29 Running command git branch
* (detached from dfa78d4)
caribou

[Container] 2018/04/22 18:43:29 Running command git branch -a
* (detached from dfa78d4)
caribou
remotes/origin/HEAD -> origin/caribou
remotes/origin/alpaca
remotes/origin/badger
remotes/origin/caribou
remotes/origin/multi-branches
remotes/origin/v7.0.1

[Container] 2018/04/22 18:43:29 Running command git show -s --pretty=%D HEAD
%D

git show -s --pretty=%D HEAD should give you the branch from which the detached head was created.
Maybe CodeBuild use an old version of git, so it's why it doesn't works.
What do you get with the following commands:

git --version
git log -n 1 --pretty=%D HEAD
git log -n 1 --pretty=%d HEAD
git show -s --pretty=%d HEAD

I use the dockerhub node:8 image, since AWS CodeBuild currently has no Node.js 8 support (they are working on it though).

[Container] 2018/04/23 21:49:09 Running command git --version
git version 2.1.4

[Container] 2018/04/23 21:49:09 Running command git log -n 1 --pretty=%D HEAD
%D

[Container] 2018/04/23 21:49:09 Running command git log -n 1 --pretty=%d HEAD
(HEAD, origin/caribou, origin/HEAD, caribou)

[Container] 2018/04/23 21:49:09 Running command git show -s --pretty=%d HEAD
(HEAD, origin/caribou, origin/HEAD, caribou)

So the problem is your version of Git is pretty old and doesn't support %D for the format.
I made a change to use %d instead that should be supported.
Could try again with your fork and the updated code on pvdlg/env-ci#branch-detached-head?

fyi, I asked AWS what they are using to clone the repo: they are not cloning, but downloading the archive.

Tested with 22530580bf6d57b6ae9dfb8743cf1388ad4acaf5 and it works.

Thanks so much for all the tests and info!

:tada: This issue has been resolved in version 1.7.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix bugs

Fix the criteria for determining whether two properties are the same in _to_kinds.
-- E.g. 0.199_Mn3Sn in examples, there are 3 kinds of magmoms.
-- Mn0: (1.5, 1.5sqrt(3), 0); Mn1: (-3, 0, 0); Mn2: (1.5, -1.5sqrt(3), 0)
-- it will give Mn1 and Mn2 the same label because norm(Mn2-Mn0) == norm(Mn1-Mn0)
Fix to_dict(detect_kinds=True) sometimes give wrong positions.
-- In step 2, kind_numeration may append same kinds repeatedly.
-- kind_numeration have different order with other properties.
-- In step 3, it will give a same position to same kinds (positions should be different).
Remove unused variable.
-- In step 2 of to_dict, kinds and check_array have similar functionality and do not be used later.
Match the kinds and site.kind_name in to_dict

Closing this as we modified, together with @jiang-yuha0 , the code directly, following this PR. Thanks @jiang-yuha0 !!


Prefer mixedCaps over underscore

https://golang.org/doc/effective_go.html#mixed-caps

Finally, the convention in Go is to use MixedCaps or mixedCaps rather than underscores to write multiword names.

Thanks for going through all this. I've used snake_case all my life and I'm still adapting to the Go coding style. How did you rename all this? Are you aware of gorename and vim-go?


Range type variables (e.g. projectile components) have insanely large range numbers

This seems to be caused by the cooked file not having any value other than the default for a C++ class property.
When the property is a float range, the default is negative max float to positive max float.
There isn't really any way to get around this, and it isn't exactly a broken feature, so I will close as not a bug.


Copy environment variables to launched capability providers

When you launch a capability provider that is an executable, it  is simply launched as a child process. In order for those providers to allow for flexible configuration, we should copy (minus some secrets) environment variables from wasmcloud's environment into the provider's environment.

Closing this in favor of #36


Relocate existing k8s/terraform infrastructure

This PR migrates two bits of existing infrastructure. Moving this logic here will make our dependence on complex infrastructure stuff more transparent and open.
The first addition is the Kubernetes infrastructure from https://github.com/ClimateImpactLab/downscaleCMIP6-infra-argo. This is moved to a new /infrastructure/kubernetes/ directory in this repo.
This infra is automatically watched/managed/updated by an ArgoCD install on the cluster.
A README.md at the base of that directory describes what's what and should be readable by anyone familiar with Kubernetes and basic ArgoCD.
The other addition is the terraform deploying. This is migrated from https://github.com/ClimateImpactLab/downscaleCMIP6-infra to /infrastructure/terraform/ in this repo. This code sets up the hard hardware, including the clusters deployed to in /infrastructure/kubernetes/.
Changes to Terraform will be planned automatically through CI/CD, though viewing the plans and applying changes requires manual, external confirmation.

I just added the Terraform infra. I'll need to try to set up CI/CD for it after this merges.

@brews this looks so awesome, thank you for setting this all up and migrating it to this repo! I have a few comments, and I was wondering if we want to take out some of the errors that are commented out but appear in the notes section? Or did you want to have a record of these? Also was wondering what the point was of this file infrastructure/terraform/outputs.tf since it's empty? I'm super green with terraform though so maybe that has a purpose I'm not aware of...

Thanks for the feedback, @dgergel. This is ready for a re-review.
The notes.sh file is old scratch notes. It shouldn't be here. I removed it.
The outputs.tf is for denoting output variables from a Terrafrom workspace. I removed it. I can drop it back in here if we have need for it again in the future.
Please let me know if you have additional comments or changes. Thank you!


Modifier -> SwiftUI -> Preferences: onPreferenceChange(_:perform:)

Doc: https://developer.apple.com/documentation/swiftui/view/onpreferencechange(_:perform:)

[ ] Swift implementation
[ ] Elixir implementation

We won't support this according to the team


gltf_viewer always creates the file imgui.ini in the current directory

This can be changed by setting io.IniFilename in ImGui. We could just pick the directory of the executable.

The directory of the executable isn't writable.

I assume you mean it's not guaranteed to be writable? gltf_viewer currently isn't exactly designed to be a general deployable app.

Yes, it isn't writable when installed as a package.
We have the filament port on FreeBSD despite, as you are saying, it "currently isn't exactly designed to be a general deployable app".


3.4.7 Evaluation Format

Currently only 0 is supported. Once decimal64 and 128 are implemented a promotion system a la Boost.Math can be used to support promotion of evaluation.

[ ] cmath
[ ] add, sub, mul, div decimal32
[ ] add, sub, mul, div decimal64


Global address list is empty

When I open an Exchange Online mailbox with mfcmapi, nothing is displayed in the global address list.
The MAPI call IAddrBook::GetDefaultDir returns "Offline Addressbook" without entries and not "Global Address list".
Outlook shows entries in the address book just like Outlook-Spy.
This only happens if the Outlook Office 365 client is installed.
If I use Outlook 2016/2019 everything is fine and addressbook entries are displayed correctly in global address list with mfcmapi.
The MAPI call IAddrBook::GetDefaultDir returns "Offline Addressbook" without entries and not "Global Address list".

try opening the hierarchy instead

I did that.
In the hierarchy, only the Offline Address Book is displayed (see attached file).

I've solved it.

It seems that the address book provider ( from Office 365 client) does not work with Basic Authentication (RegKey EnableADAL=0).


Windows Defender deleting aider.exe

Issue
Windows Defender (WD) is detecting Trojan:Win32/Cinjo.O!cl and thinks the culprit is Python312/Scripts/aider.exe.
After restarting my device, WD seems to have performed a scan of the device and keeps deleting aider.exe.
Adding the Python312/Scripts folder to the list of folders excluded from being scanned by Defender Antivirus prevents aider.exe from being deleted.
Version and model info
Aider v0.36.0
Windows Edition: Windows 11 Enterprise
Version: 23H2

Thanks for trying aider and filing this issue.
My best guess is there's something wrong with your local environment. Perhaps you have malware on your machine and it's infecting random executables.
The aider releases are built by GitHub's Actions platform. It would be very surprising if it was compromised and generating code that contained malware.

I'm going to close this issue for now, but feel free to add a comment here and I will re-open or file a new issue any time.


test(cli): add test for get-env-details.ts

Description of changes
Increase test coverage of amplify-cli.
Description of how you validated changes

lerna --scope @aws-amplify/cli run test

Checklist

[x] PR description included
[x] yarn test passes
[x] Tests are changed or added
[x] Relevant documentation is changed or added (and PR referenced)

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

Codecov Report

Merging #7377 (26364a9) into master (3dbb3bf) will increase coverage by 0.00%.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #7377   +/-   ##
=======================================
  Coverage   52.72%   52.72%
=======================================
  Files         513      514    +1
  Lines       25914    25918    +4
  Branches     5058     5058
=======================================
+ Hits        13662    13666    +4
  Misses      11286    11286
  Partials      966      966

Impacted Files
Coverage Δ

.../src/extensions/amplify-helpers/get-env-details.ts
100.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 3dbb3bf...26364a9. Read the comment docs.


Types of property "attributes" are incompatible - Scopes with col()

In my scope, I have this:
@Scopes({
  details: {
    raw: true,
    attributes: {
      include: [[Sequelize.col('UserRole.is_primary'), 'is_primary'], [Sequelize.col('UserRole.expires_at'), 'expires_at']]
    }
  }
})

However, I'm getting

Types of property "attributes" are incompatible

When I look at the code, it looks like Sequelize.col() is not supported as a type?

Hey @IntellectProductions due to the docs (http://docs.sequelizejs.com/manual/querying.html#attributes) and the official sequelize typings only Sequelize.fnis allowed there, not Sequelize.col.

col is allowed to be used here but type definitions of official Sequelize is missing that part.
You can bypass that with
[col('UserRole.is_primary') as any, 'is_primary']

@types/sequelize also missing col: https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/sequelize/index.d.ts#L3309
@seancheung Can you create a PR for sequelize@5 with a fix?

Closing this due to inactivity


Shift + F3 doesn't work in the built-in docs

Godot version:
3.1.1
Issue description:
When you search something in the documentation, you can use F3, but Shift + F3 (search previous) doesn't work.
Steps to reproduce:

Open some doc in the editor
Search something
Press F3
Press Shift + F3
Press Shift + F3 again, just to be sure

The Docs seem to be opened by a "ScriptEditor", which doesn't appear to have a shortcut key for  Find Previous. GDScripts, seem to be opened by "ScriptTextEditor", which has a shortcut key for both Find Next and Find Previous. I'm not sure if this is true as I haven't looked at the source, just came to the conclusion by looking at the shortcuts in Editor Settings.
Is there a reason for Script Editor and Script Text Editor? I feel like Script Editor is old as even the file menu is different between the editor for docs and scripts. Also, when you press CTR + F to search, the search bar in the docs looks more primitive then the search bar for scripts.


[DO NOT MERGE] Add user andreagrandi

Andrea has just joined Finding Things.

@andreagrandi 's adding a passphrase to his key.


[FLINK-17523] Add call expression with a class of UDF as a parameter

What is the purpose of the change
Add a call method that accept a class of UDF. Similar to org.apache.flink.table.api.TableEnvironment#createTemporarySystemFunction(java.lang.String, java.lang.Class<? extends org.apache.flink.table.functions.UserDefinedFunction>)
Verifying this change
Added a test case in ExpressionResolverTest
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@flinkbot run azure


Support to provide external key to sandbox

This address a part of https://github.com/docker/libnetwork/issues/429.
Signed-off-by: Madhu Venugopal<EMAIL_ADDRESS>

@mrjana @aboch this brings in the changes required in the sandbox code to update external key. It is obviously missing reexec code (via runc) that will make use of the new API. There are a few extra complications on that part and hence, lets try and review and get this part merged and work on a better solution for the hook. We might end up relying on https://github.com/docker/libnetwork/pull/466.

@mrjana thanks for the input. updated the PR based on your feedback. PTAL.

@aboch i think i addressed all your comments

@mrjana @aboch  PTAL

LGTM

LGTM


Latest version of pg-promise doesn't work with NodeJS 8 or 10

Running npm i bumps pg-promise to 10.15.x which dropped support for NodeJS<12.
This causes CI tests to fail on Node 8 and 10 with the error:
Running "mochaTest:integration" (mochaTest) task
>> Mocha exploded!
>> Error: Minimum Node.js version supported by pg-promise is 12.0.0
>>   at Object.<anonymous> (/app/node_modules/pg-promise/lib/index.js:[24](https://github.com/medic/cht-couch2pg/actions/runs/5353666576/jobs/9709786510#step:6:25):11)

This is the same error I seein production running cht-couch2pg 3.6 on Node<12.

Confirmed that production cht-couch2pg doesn't work on Node8 or 10
$ nvm use lts/carbon
Now using node v8.17.0 (npm v6.13.4)
$ npx cht-couch2pg@latest
Minimum Node.js version supported by pg-promise is 12.0.0

$ nvm use lts/dubnium
Now using node v10.24.1 (npm v6.14.12)
$ npx cht-couch2pg@latest
Minimum Node.js version supported by pg-promise is 12.0.0


feedback and enhancements

Describe the bug
A clear and concise description of what the bug is.
How to reproduce
Steps to reproduce the behavior:
Expected behavior
A clear and concise description of what you expected to happen.
Attachments
If applicable, add data, logs or screenshots to help explain your problem.
Environment (please complete the following information)

klaytn-dex-frontend release version that exhibits the issue
OS and its version [e.g. macOS/10.14]
Wallet and its thank you for this amazing testnet
i have done all features, all features run smoothly and comfortable to use
i am sure people will get a comfortable experience I will support this project
bugs
*sometimes Failed to swap Klay - USD also i have incresed slippage %5
*sometimes  add liquidity from Klay to Dai there is a problem "error preparation failed"
*sometimes   can't vote even though there is a balance
*UI/UX isn't responsive,balance is not synchronized, actually I have 500 KLAY test, that's increase from the faucet.
But on asset menu it's only at least 300 KLAY test.

in mobile mod the placement of elements that are not in place and fonts are not good

enhancements
*add theme and dark/light mode
*add an input balance based on prices $ exchange rate
*add transaction history
0x0084097e1ddee3aea0c6fbc8d381577ab6a5f0b0 used [e.g. Kaikas, metamask]
Additional context
Add any other context about the problem here.

Bugs
*sometimes Failed to swap Klay - USD also i have incresed slippage 5%:  Klay Swapping issues have been resolved
*sometimes add liquidity from Klay to Dai there is a problem "error preparation failed":  Adding liquidity issues have been resolved as well
sometimes can't vote even though there is a balance: Voting you would need Dex coins or earned Dex from farming
UI/UX isn't responsive,balance is not synchronized, actually I have 500 KLAY test, that's increase from the faucet.
But on asset menu it's only at least 300 KLAY test.: The UI/UX is much more responsive now, and if it doesnt update your balance immediately after your faucet, a refresh button would update the old to new balance
In mobile mod the placement of elements that are not in place and fonts are not good: The mobile placements of icons and fonts were not in the scope of this release but they are adjusted and fixed


how to update to start by webpack?

would you give an example to show how to start by webpack? thanks

There's still a webpack branch in the repo that I played around at rc.3.  I got it to work for everything except unit testing.  I'd love to figure that part out but don't have time to put into it.

thank you. I saw it. I will try. thanks again.


optionally pass a MGLStyle instead of a styleURL in the MGLSnapshotOptions

Is your feature request related to a problem? Please describe.
modify style properties (e.g. layer order, opacity, etc.) and then create a snapshot from the current map appearance
Describe the solution you'd like
I would want a snapshot of the current style
Describe alternatives you've considered
maybe I could create the snapshot without the API?
or write the current style to the device and pass this URL
Additional context
Currently, you can only pass a style URL, but if the style of the map on screen has been modified after loading it, the snapshot will not represent the current map appearance.

@dieterdreist thanks for the details. Are you interested on this feature mainly for iOS? Or also on other platforms?

In principle I think every platform would benefit from this, but personally I am only interested for iOS, in js you can get screenshots from the canvas object IIRR.


feat: initial release for modular production kit

Description

This Pull Request introduces the first version of the Modular Production Kit in the Resiliency Domain in anticipation of the 23.12 release. It includes the Changelog, Adoption and Software Development View as wells as a white paper.
The content of the pull request is created by the Modular Production Team @wehrstedt-jan

Pre-review checks
Please ensure to do as many of the following checks as possible, before asking for committer review:

[ ] DEPENDENCIES are up-to-date. Dash license tool. Committers can open IP issues for restricted libs.
[ ] Copyright and license header are present on all affected files

@maximilianong @danielmiehle @SebastianBezold

Cannot say much about the content, but maybe some general questions:

Is it possible to get SVG versions of the images provided? This would ensure, that we can maintain the images.
Where does the modular-production-onboarding.pdf come from? Is there an editable "raw" form of it. This is also related to maintainability of the contents
Is it commonly agreed in KITs, that directory names contain spaces? I see that quite often, but find it uncomfortable, especially when it comes to linking. If the directory structure is present in URLs and links, the spaces always have to be URL encoded to %20 and so on.

All in all the PR looks good to me, but the image and PDF topic should be address somehow (maybe afterwards). The spaces in directories topic is just food for thought 😁

will check for SVGs of the images
The raw version currently is a Word document
For the creation of the KIT I checked the repository and the wiki since the spaces looked strange at first; yet the wiki also has examples containing them https://github.com/eclipse-tractusx/eclipse-tractusx.github.io/wiki/How-to-create-a-KIT-website%3F

PNG files have been replaced with SVG files

PNG files have been replaced with SVG files

Ok cool thank you. Looks good from my side. I'll add @danielmiehle and @maximilianong to the reviewers section.
In case you did not know yet @dominikoeh, you can ask for review, when you have "triage" privileges. You'll get these privileges, when you are added as "Project Contributor". This role can be granted to you by any committer and we also prepared an issue template for it

@maximilianong we should update the how to create a KIT page concerning the directory names and spaces.


There is a problem that will happen during my training, I don't know how to solve it.

There is a problem that will happen during my training, I don't know how to solve it.
File "E:\carla_RL\carla-Ramp\carla_env\carla_env.py", line 340, in step
next_obs, reward, done, info = self._simulator_step(action)
File "E:\carla_RL\carla-Ramp\carla_env\carla_env.py", line 398, in _simulator_step
snapshot, self.display_image = self.sync_mode.tick(timeout=2.0)
File "E:\carla_RL\carla-Ramp\carla_env\carla_sync_mode.py", line 50, in tick
data = [self._retrieve_data(q, timeout) for q in self._queues]
File "E:\carla_RL\carla-Ramp\carla_env\carla_sync_mode.py", line 50, in
data = [self._retrieve_data(q, timeout) for q in self._queues]
File "E:\carla_RL\carla-Ramp\carla_env\carla_sync_mode.py", line 69, in _retrieve_data
data = sensor_queue.get(timeout=timeout)
File "D:\Anaconda3\Anaconda3\envs\torch_carla\lib\queue.py", line 178, in get
raise Empty
_queue.Empty
Hope to get your help, thank you.
I use the catch exception to ignore this error, but the pygame interface and the training process will get stuck.

def get(self, block=True, timeout=None):
    '''Remove and return an item from the queue.

    If optional args 'block' is true and 'timeout' is None (the default),
    block if necessary until an item is available. If 'timeout' is
    a non-negative number, it blocks at most 'timeout' seconds and raises
    the Empty exception if no item was available within that time.
    Otherwise ('block' is false), return an item if one is immediately
    available, else raise the Empty exception ('timeout' is ignored
    in that case).
    '''
    with self.not_empty:
        if not block:
            if not self._qsize():
                raise Empty
        elif timeout is None:
            while not self._qsize():
                self.not_empty.wait()
        elif timeout < 0:
            raise ValueError("'timeout' must be a non-negative number")
        else:
            endtime = time() + timeout
            while not self._qsize():
                remaining = endtime - time()
                if remaining < 0.0:
                    raise Empty
                self.not_empty.wait(remaining)
        item = self._get()
        self.not_full.notify()
        return item

The error comes from here.

@zhouwy-lv which CARLA version do you use?

@janwithb Thanks for your replay! The carla version is 0.9.9. I have solve it through "try ... expect ...", while this method will cause dirty data.


feat: open PR instead of commit for CI action

Changes

What does this change?
Be short and concise. Bullet points can help!
Before/after screenshots can help as well.

Docs

Current dependencies on/for this PR:

main

PR #1   👈

This stack of pull requests is managed by Graphite.


feat: modify CC, SCC interfaces to process multi-txs

Description

closes: xxxx

All state batches are valid if they have not been deleted during challenge period.
The unit of state transition for confirmation is batch. If one of intermediate state roots is wrong in specific batch, this batch is rejected and the state root returns to pre-state root.
The batch frame matches the L2 block one-on-one, and the L2 batch consists of several batch frames.
Queue transaction has three states (pending, finalized, outdated). If this tx is not included in L1 CC batch until deadline, it would be outdated and all registered sequencer get penalty.

Motivation and context

How has this been tested?

Screenshots (if appropriate):
Checklist:

[x] I followed the contributing guidelines and code of conduct.
[ ] I have added a relevant changelog to CHANGELOG.md
[ ] I have added tests to cover my changes.
[ ] I have updated the documentation accordingly.
[ ] I have updated API documentation client/docs/swagger-ui/swagger.yaml

I think CCBatch interface need L2 block interface. What block is reproduced from CCBatch?

What kind of blocks are reproduced from CCBatch? I think it's difficult to decide the exact block structure at this stage, but I'd like to know what blocks you have in mind.
tendermint Block rollkit Block dymint Block

@ulbqb You can reproduce any block with this batch. CC only have duty to save and sequence txs in my design. I assume that any L2 node already know their L2 block scheme So they can reproduce their block with this batch data. When they reconstruct their block, they should fetch their block header from their L2 peer who already have that height block. They can validate this header because the CC batch has parent hash data.

@tkxkd0159
My concern is that Batch does not include sequencer signatures. Since the signature can only be created by the sequencer himself, there is a possibility that the L2 block cannot be reconstructed. However, I don't know if the L2 block needs to be signed in the first place, so I think we need to investigate this.
However, I don't think there is a big problem with the structure, so I think the current interface is fine.

@tkxkd0159 My concern is that Batch does not include sequencer signatures. Since the signature can only be created by the sequencer himself, there is a possibility that the L2 block cannot be reconstructed. However, I don't know if the L2 block needs signatures in the first place, so I think we need to investigate this.
However, I don't think there is a big problem with your structure, so I think the current interface is fine.

In Optimism & Arbitrum cases, they assume that only verified sequencer can push DA data to L1. So I guess they guarantee their data integrity without signature. It seems a bit naive and centralized but I think it's fine at our initial L2 layout.


add documentation on LogPlugin and more log usage

Fixes #1895
Changed most println to info in examples, some to warn when it was useful to differentiate from other more noisy logs.
Added doc on LogPlugin, how to configure it, and why (and how) you may need to disable it

bors r+


Dev

We're currently processing your upload.  This comment will be updated when the results are available.


API: Metrics object with functions

It would be nice to have a matches object and do something along these lines:
...
matches.get_one_to_one()

...
matches.metrics(ground_truth)

...

This issue can be closed, as #70 has solved this (forgot to put it in the PR)


Fix trailing blank lines

As per the rubocop TODO.

Looks good, but conflicts :frowning:

@SteveMarshall fixed.


Draft: Release 2.6 Preparation

Signed-off-by: Andre Riesco<EMAIL_ADDRESS>

I'd be super grateful if you could consider including https://github.com/commontorizon/Containerfiles/pull/14 and https://github.com/toradex/vscode-torizon-templates/pull/216 in this release.
We're also brewing a 1.7.2 release next week that includes a fix for the Toradex i.mx95 board.

Sure @tronical, I will add it and run the tests on it, thanks for point out.

Hey @andreriesco I also cherry-picked the commits here for the https://github.com/toradex/vscode-torizon-templates/tree/next

Hey @andreriesco maybe would be better if you get the next branch as base for your work. I cherry-picked your work there and had so solve a lot of conflicts already.

Hey @andreriesco I added on next the follow changes:
dc02e32fa33d89ffd10eb6385cd3ba5be276db80
5bbfa9eb0d38423b286994a3417e3c9dafa3896d
29bba3bd011fdf848558124ef8d22d0a69a88be9
The reason is that this breaks the UX for the end of the tasks, as the reuse message is not shown, and appears that the tasks are still running when they are already finished.

Hey @andreriesco , another change:
014506e1ea307c06df9c16297e8dcae769473af8
The reason is that red brings the idea of error or that the tasks crashed.

Closing this as it was merged into next


Migrate project's main README from .rst to .md

While .rst files are much preferred for documentation, .md files are nice to have as READMEs because of their render in GitHub. Moreover, since 2019 the PyPI Warehouse supports rendering Markdown as well. It would be nice to have the project's main README in .md format by default.

Fixed in commit ee0f8c8d3c4cbc4f386db19d15a53e25f949c9d4


Can't sort by publishedAt - others work

@blog_posts = CMS::BlogPost.all.order('publishedAt').load #nope

@blog_posts = CMS::BlogPost.all.order('updatedAt').load #works

module CMS
  class BlogPost < ContentfulModel::Base

    self.content_type_id = 'blogPost'

  end
end

Any idea?
Json preview in Contentful:

Update:
Seems that key isn't included in Contentful::Resource::SystemProperties:: SYS_COERCIONS. What to do?

I hit this today too.
I actually extended

I hit this today too.
I actually extended SYS_COERCIONS to include the published timestamps, and got another error that indicates that the API doesn't allow ordering by published:

Contentful::BadRequest – The property "sys.firstPublishedAt" is invalid when querying a published Entry

I couldn't find anything in the API docs that lays out what fields you can/cannot sort by. Would be great to get some clarification.

Seems that the set of system things you can order by is bounded to the "common resource attributes".
FYI, my use case here was the company blog.

Hey @clowder and @Frexuz,
What @clowder says seems to be the reason, I'll ask the platform team if this is the case.
I'll get back to you shortly on this.
Cheers

After talking with the lead developer of our platform team I got this issue clarified.
sys.publishedAt is only available for searching on the CMA, and exclusively for already published entries.
This integration only does search over CDA, so the property is unavailable to be searched.
Does that make sense?

Makes sense, might be a nice one to add to the CDA. For now we have added our own publishedAt field.

Hey @clowder,
sys.updatedAt should match the latest published value, as anything present in the CDA is published, the last update is the last published version of the entry.
Cheers
PS: Closing the issue, we can continue discussing about it though.

Would like to query the CDA with the publishedAt attribute

Hey @reidcooper,
The publishedAt property is only part of the CMA. The equivalent parameter for CDA would be sys.updatedAt, which coincides with the sys.publishedAt from CMA.
Cheers


Continue implementing Logs

0pdd should have created an Issue for this. Remove the todo when done.

The job #130 assigned to @amihaiemil/z, here is why; the budget is 30 minutes, see §4; please, read §8 and §9; if the task is not clear, read this and this; there will be no monetary reward for this job

Job gh:amihaiemil/docker-java-api#130 already assigned to @amihaiemil, can't assign to @amihaiemil

Bug was reported, see §29: +15 point(s) just awarded to @amihaiemil/z

Manual assignment of issues is discouraged, see §19: -5 point(s) just awarded to @amihaiemil/z

It is strongly discouraged to assign jobs to their creators, see §19: -15 point(s) just awarded to @amihaiemil/z

@amihaiemil/z this job was assigned to you 5days ago. It will be taken away from you soon, unless you close it, see §8. Read this and this, please.

@0crat waiting for release

@0crat waiting for review (here)

@amihaiemil The impediment for #130 was registered successfully by @amihaiemil/z

Order was finished: +30 point(s) just awarded to @amihaiemil/z

The job #130 is now out of scope

@0crat footprint

@0crat footprint  (here)

@amihaiemil Can't understand "footprint", try one of these:

assign Assign a performer to this issue
boost Set a boost for the job
continue Remove a job's impediment
hello Just say hello
in Register this issue in scope (WBS)
out Close the order and remove this job from scope
pay Pay a user some extra cash
quality Review a task
resign Resign from this issue
status Check the status of the job
version Print current version of the bot
wait Register an impediment for a job

@0crat status

@0crat status (here)

@amihaiemil This is what I know about this job in G6LPQQV2P, as in §32:

The job #130 is not in scope
Job footprint (restricted area)

@andronachev thank you for resolving this ticket. I've just added it to your active invoice. You can alwayscheck all your invoices and more on the Contributor Dashboard.


Avoid allocating in updateLineCountAndPosFor

...(in the call to computeLineStarts) by detecting the very common case of not having a linebreak.

On my box, this cuts total time for the compiling ts/src by about 1% and I suspect it saves additional GC time in larger projects.

@typescript-bot test this

@typescript-bot perf test this

It is weird that Monaco seems to see no improvement.

This does not appear to have the same memory benefit as #44242.


GoDaddy DNS Entry Workaround Tip

Description of the change:  Providing additional detail to GoDaddy users on how to adjust CNAME entries
Reason for the change: To reduce customer frustration and impact on Support for helping with this issue
Link to original source:https://sendgrid.com/docs/ui/account-and-settings/how-to-set-up-domain-authentication/

Closes #

Hello @drespinoza,Thanks again for the PR! It's HACKTOBERFEST! We want to show our appreciation by sending                                              you some special Hacktoberfest swag. If you have not already, could you please fill out                                              this form so we can send it to you? Thanks!                                             Team SendGrid DX