speedup junit upload job

What does this PR do?
The current junit upload jobs basically does:
for each tgz file from artifacts of previous jobs:
  for each xml file from this tgz: (a dozen of files):
     for each codeowner group from this xml file (1 or 2 each):
        spawn a process uploading the sub-xml file
     wait all processes from this one xml file

this PR moves to:
for each tgz file from artifacts of previous jobs:
  for each xml file from this tgz: (a dozen of files):
     for each codeowner group from this xml file (1 or 2 each):
        spawn a process uploading the sub-xml file
  wait all processes from this one tgz file

meaning that we spawn many more datadog-ci workers in parallel, speeding up the job duration by a lot.
This has a big effect because in regular pipelines we spawn more than 500 datadog-ci sub-processes.
This is a pretty "minimal" solution. We could be more involved and rework this whole algorithm and try to coalesce sub-xml files with the same tags (service, codeowners, etc) and pass it as a group to datadog-ci -> something to think about for a future improvement.
Perf benchmark:

before: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/jobs/384951501 (p50 = 15min)
after: https://gitlab.ddbuild.io/DataDog/datadog-agent/-/jobs/385037801 (6min, not enough data to compute a median obviously)

Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

/merge


Pre-trained Generator Weights

Hey, thanks for the great work. Could you upload the pre-trained generator weights? After training, we found that the results of GAMA are better than the baselines. However, they are lower than the numbers reported in the paper. Specifically, in Table 2, using VGG-19 as the surrogate and DenseNet121 as the black-box, we observed 53.65, whereas the paper reported 44.58. We used the parameters as outlined in the paper. Could you possibly assist us in determining where we might have gone wrong?

Hey @fahadshamshad , I do not have access to the original pre-trained weights anymore. Can you check if the result holds after multiple runs? Also, may be training it longer.
As an observation through my experiments, VGG19 should result in strong perturbations.

Hi @abhishekaich27, I'm also having the same issue. My run shows better results than baselines but worse than the reported values in the paper. Are they the averaged values from multiple runs? The code seems to not able to control the random seed for reproducibility.

@hoonsyang Can you report your numbers? My results are after 1 run.


Function keys press with TestCafe

As the Function keys are not listed in the supported key type in the document, I assume this is not supported by .pressKey, if so, is there any work around?

This thread appears to be a duplicate of #1887. Please use the original thread instead of this issue to get notifications about our progress with implementing this feature.

Thanks Andrey for reply. Sorry I didn't get to read the feature enhancement board earlier, wondering do we have a timeline on the implementation of this feature, I see it was logged a year ago, any updates? If there any work around you would suggest?


A better looking Server list

Its table is ugly and also uses Dmg and PvP instead of images of heart and sword.

issue should be on this repo: https://github.com/minetest/master-server


throw error when target string is empty

When target is set in context and is empty, do not trigger recovery, instead throw target decode error and return.
this was reported in mattermost

The problem is that the targets are always set in context, even if they are empty:
func (s *server) bzzDownloadHandler(w http.ResponseWriter, r *http.Request) {
    logger := tracing.NewLoggerWithTraceID(r.Context(), s.Logger)
    targets := r.URL.Query().Get("targets")
    r = r.WithContext(sctx.SetTargets(r.Context(), targets))
    ctx := r.Context()

// fileDownloadHandler downloads the file given the entry's reference.
func (s *server) fileDownloadHandler(w http.ResponseWriter, r *http.Request) {
    logger := tracing.NewLoggerWithTraceID(r.Context(), s.Logger)
    nameOrHex := mux.Vars(r)["addr"]
    address, err := s.resolveNameOrAddress(nameOrHex)
    if err != nil {
        logger.Debugf("file download: parse file address %s: %v", nameOrHex, err)
        logger.Errorf("file download: parse file address %s", nameOrHex)
        jsonhttp.BadRequest(w, "invalid file address")
        return
    }
    targets := r.URL.Query().Get("targets")
    r = r.WithContext(sctx.SetTargets(r.Context(), targets))

Also, the error that should be returned from netstore is supposed to be ErrNotFound, now it will always return a recovery started error, which is wrong. returning a targets empty error does not improve the situation.

The problem is that the targets are always set in context, even if they are empty:

Even though i think that "setting targets to empty strings" needs to be fixed , to fix the issue.
If fix this your way by catching empty string and sending ErrNotFound from netstore.

fixed in a different PR


chore: use @so1ve/eslint-config to lint and format

This PR removes prettier and eslint-config-umi. It uses @so1ve/eslint-config and eslint-plugin-dprint-integration instead, which brings better DX and shorter formatting time and more linting rules.
TODO: switch to @so1ve/eslint-config-react when the codebase is rewritten in typescript. This prevents eslint from complaining about prop validation.

Great! However, the migration to Vite is nearly done in refactor/vite branch, it makes more sense to apply this change there later.
PS: It would be great if you can help test the new version so we can merge it into master as soon as possible.

Plus, I see no problem with Prettier now, and since dprint is under active early development, it'd be better to stick with Prettier as for now.

OK, let me check it out :)


BUG: SocialLoginSerializer.validate() checks if email exists, however complete_social_login from allauth already created the user, always ending up in error state

Config
Using all-auth social login with Google
# Pipfile
dj-rest-auth = "==6.0.0"
django-allauth = {extras = ["socialaccount"], version = "==0.63.6"}

Using the following settings:
# base_settings.py
ACCOUNT_LOGOUT_ON_GET = True
SOCIALACCOUNT_AUTO_SIGNUP = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_USER_MODEL_USERNAME_FIELD = 'username'
SOCIAL_ACCOUNT_USER_MODEL_USERNAME_FIELD = 'username'
ACCOUNT_EMAIL_REQUIRED = True
SOCIALACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_AUTHENTICATION_METHOD = 'email'
SOCIALACCOUNT_AUTHENTICATION_METHOD = 'email'

Functional Issue
Not signed up user has to login twice before actually logged in.
The first time a user logs in always results in a ValidationError with message 'User is already registered with this e-mail address.'.   However the user is actually created in de db, even though the error occurs. If the user logs in again, it recognises the user in the database and logs you in with status 200 (i.e. user is actually logged in).
Issue
SocialLoginSerializer.validate(..) itself checks if the e-mail adress is already in use on signup, however prior to that is call the all-auth function complete_social_login which already checks this, and saves the user:
SocialLoginSerializer.validate(...) calls allauth's complete_social_login
# /dj_rest_auth/registration/serializers.py
class SocialLoginSerializer(serializers.Serializer):
    def validate(self, attrs):
            ...
            ret = complete_social_login(request, login)

########### START callstack into allauth ###########
# /allauth/socialaccount/helpers.py
def complete_social_login(request, sociallogin):
    ...
    flows.login.complete_login(request, sociallogin)

# /allauth/socialaccount/internal/flows/login.py
def complete_login(request, sociallogin, raises=False):
    ...
    return _authenticate(request, sociallogin)

def _authenticate(request, sociallogin):
    ...
    ret = process_signup(request, sociallogin)

# /allauth/socialaccount/internal/flows/signup.py
def process_signup(request, sociallogin):
    ...
    # Here the user get's saved by allauth, and returns to where dj-rest-auth's SocialLoginSerializer.validate
    # called complete_social_login (where it goes wrong.)
    get_adapter().save_user(request, sociallogin, form=None)
########### END callstack into allauth ###########

# /dj_rest_auth/registration/serializers.py
class SocialLoginSerializer(serializers.Serializer):
    def validate(self, attrs):
            ...
            # Back in dj-rest-auth validation, it tries to validate if the email adress is unique, however
            # the user was just created by all-auth with exactly this email adress, so it will throw an error
            # that the adres is already in use. As the user is already created, a new login follows the login flow
            # instead of the signup flow, and therefore the user can login without issue on the second login
            account_exists = get_user_model().objects.filter(
                    email=login.user.email,
                ).exists()

Possible solution
The returned login variable login.is_existing is checked to see if a user already existed, if not it goes and checks the email adress. However login.user can also be checked, as allauth fills login.user with the created user object on signup,  dj-rest-auth could check this and see if it already has an ID. If it has an ID it knows the user is already created (and then assume allauth did proper validation) and hence skip the email check.
Workaround (hacky)
Create a custom SocialLoginSerializer, copy only yhe validate function from the original code and comment out the email check.
# custom_social_login_serializer.py
class CustomSocialLoginSerializer(SocialLoginSerializer):
    def validate(self, attrs):
            ...
            # if allauth_account_settings.UNIQUE_EMAIL:
            #     # Do we have an account already with this email address?
            #     account_exists = get_user_model().objects.filter(
            #         email=login.user.email,
            #     ).exists()
            #     if account_exists:
            #         raise serializers.ValidationError(
            #             _('User is already registered with this e-mail address.'),
            #         )

# social_providers.py
from dj_rest_auth.registration.views import SocialLoginView
from allauth.socialaccount.providers.google.views import GoogleOAuth2Adapter
from allauth.socialaccount.providers.oauth2.client import OAuth2Client
from .custom_social_login_serializer import CustomSocialLoginSerializer

class GoolgeAuth(SocialLoginView):
    adapter_class = GoogleOAuth2Adapter
    client_class = OAuth2Client
    serializer_class = CustomSocialLoginSerializer

Hi, it seems both of us having same issue: https://github.com/iMerica/dj-rest-auth/issues/658
Any updates you made on this?
Thanks in advance

Hi, it seems this is a similar issue: #658

Hi, it seems this is a similar issue: #658

@benshaji-sequoiaat yes look like a similar issue. As I mentioned in this issue there is a hacky workaround.
I have little trust this will be solved as the README.md especially mentions:

This project has optional and very narrow support for Django-AllAuth. As the maintainer, I have no interest in making this package support all use cases in Django-AllAuth. I would rather focus on improving the quality of the base functionality or focus on OIDC support instead. Pull requests that extend or add more support for Django-AllAuth will most likely be declined. Do you disagree? Feel free to fork this repo!

I'm looking into all-auth headless to replace this library: https://docs.allauth.org/en/latest/headless/index.html

Thanks for the reply, the all-auth headless version seems to provide REST API access than the server rendered response which all-auth currently have?


Proposal: do not publish dummy asset bundle

Q
A

Is bugfix?
❌

New feature?
❌

Breaks BC?
❌

Tests pass?
✔

Fixed issues

Proposal:
Change the dummy bundle to a real dummy instance AssetBundle
The reason
If used dynamic initializer in some AssetBundle, for example, to initiate js like so
// yii\web\AssetBundle
public function init()
    {
        $this->sourcePath = '@vendor/webcreate/jquery-ias/src';
        $this->js = [
            'callbacks.js',
        ];
    }

If disable whole assetManager bundles \Yii::$app->assetManager->bundles = false; expected in accordance with docs >>If a value is false, it means the corresponding asset bundle is disabled and getBundle() should return null. But in this case, $js will be overridden and assets will still be registered, therefore. Plus it requires unnecessary resource allocation.

@onmotion changelog?

Merged. Thank you!


fix: 432 async draco loader

This fix #432, wrapping new DRACOLoader() in an async function to prevent racing condition, e.g. while looping through an array of models with draco compression.

I changed the base branch to v4 to include it on the next version, @emavitta could you please check the conflict on the useGLTF so we can merge?
Thanks


chore(deps): update common-dev-assets digest to 04de466

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
29e6c4c -> 04de466

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 2.1.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Feature request: possibility to generate dynamic bindings for WLAN API

Motivation
On certain Windows installations (e.g. cloud instances) WLAN API is not available by default and an attempt to run the application linked statically to wlanapi.dll causes it to crash due to a missing DLL.
This effectively prevents any real-world applications from using WLAN bindings in the current form.
Drawbacks
More complicated binding generator.
Rationale and alternatives
The workaround we use currently in our code is to make a manual wrapper which uses libloading crate (and eventually LoadLibrary). This wrapper attempts to load wlanapi.dll and returns Result<WlanApi, WindowsError>.
In the impl block the wrapper contains the functions which just forward the request to the dynamically gotten entry points from the loaded DLL.
This approach, however, is not ideal as WLAN API is quite rich and duplicating all methods is a lot of work.
Code example:

fn wlan_result<F, T>(code: DWORD, f: F) -> Result<T, SystemError>
where
    F: FnOnce() -> T,
{
    if code != ERROR_SUCCESS {
        Err(SystemError::WlanError(code))
    } else {
        Ok(f())
    }
}

pub struct WlanApi {
    lib: Library,
    handle: HANDLE,
}
impl WlanApi {
    pub fn new() -> Result<Self, SystemError> {
        unsafe {
            let lib = Library::new("wlanapi.dll")?;

            let func: Symbol<WlanOpenHandleFunc> = lib.get(b"WlanOpenHandle")?;

            let mut version = 0;
            let mut handle = ptr::null_mut();
            let rc = func(2, ptr::null_mut(), &mut version, &mut handle);

            wlan_result(rc, move || WlanApi { lib, handle })
        }
    }

    pub fn enum_interfaces(&self) -> Result<WlanRef<WLAN_INTERFACE_INFO_LIST>, SystemError> {
        unsafe {
            let func: Symbol<WlanEnumInterfacesFunc> = self.lib.get(b"WlanEnumInterfaces")?;

            let mut intf_list = ptr::null_mut();
            let rc = func(self.handle, ptr::null_mut(), &mut intf_list);

            wlan_result(rc, move || WlanRef::new(intf_list, self))
        }
    }

Additional context
It can be perhaps also implemented as a separate crate wlan-rs or similar.

Have you tried using delay-loading? This is specific to MSVC but does exactly that. You can hook it up in Rust by adding the following to your build.rs file:
fn main() {
    println!("cargo:rustc-link-arg=/DELAYLOAD:wlanapi.dll");
    println!("cargo:rustc-link-lib=static=delayimp");
}

The problem with delayed loading is the recovery code. As far as I know this requires writing a compiler-specific low level C using structured exceptions and then interfacing it via FFI (in case the library cannot be loaded). And simply checking for DLL presence in advance is not reliable I guess (WinSxS, etc).
But I'll give it a try anyway, thanks for the idea.

I've never tried to "recover" from delay load failure. Rather I would do some kind of version check before calling the delay loaded imports. This can be an OS version check or a call to LoadLibrary or whatever way you think reliably tells you whether the functions are available. You could write a simple helper function that returns true if LoadLibrary/GetProcAddress succeeds for a single function and then call the API directly via the windows crate and let delay loading take care of the rest.

Often IsApiSetImplemented can be used for this as well.


Use just build tool

Problem
Each SDK has it's own build tool, and it becomes cumbersome to switch between SDKs because you have to remember how to do X in each SDK. If we use a common build tool such as just then we can make commands such as just build and just test-unit work in each SDK.
Solution
Add just to the project with some basic tasks.
Alternatives
No response

Added support on main


Placeholders notes and known issues

The placeholders branch is in good shape and is ready for you to take over, Alex. I've tested it a few different ways, and I'm happy with it.
Three known issues:
1. Ebooks SQL schema
In your existing database, you'll need to modify these columns in Ebooks table to allow nulls:
ALTER TABLE Ebooks MODIFY COLUMN `WwwFilesystemPath` varchar(511) NULL;
ALTER TABLE Ebooks MODIFY COLUMN `RepoFilesystemPath` varchar(511) NULL;
ALTER TABLE Ebooks MODIFY COLUMN `Description` text NULL;
ALTER TABLE Ebooks MODIFY COLUMN `LongDescription` text NULL;
ALTER TABLE Ebooks MODIFY COLUMN `Language` varchar(10) NULL;
ALTER TABLE Ebooks MODIFY COLUMN `WordCount` int(10) unsigned NULL;
ALTER TABLE Ebooks MODIFY COLUMN `ReadingEase` float NULL;
ALTER TABLE Ebooks MODIFY COLUMN `EbookCreated` datetime NULL;
ALTER TABLE Ebooks MODIFY COLUMN `EbookUpdated` datetime NULL;
ALTER TABLE Ebooks MODIFY COLUMN `TextSinglePageByteCount` bigint unsigned NULL;
2. PHPStan errors to fix later
Because those columns above can now be null, PHPStan is throwing errors like:
 ------ ----------------------------------------------------------------------------
  Line   lib/AtomFeed.php
 ------ ----------------------------------------------------------------------------
  58     Cannot call method format() on Safe\\DateTimeImmutable|null.

 ------ ----------------------------------------------------------------------------

 ------ ----------------------------------------------------------------------------
  Line   templates/EbookGrid.php
 ------ ----------------------------------------------------------------------------
  49     Parameter \#1 $num of function number\_format expects float, int|null given.

 ------ ----------------------------------------------------------------------------

 ------ ----------------------------------------------------------------------------
  Line   templates/RssEntry.php
 ------ ----------------------------------------------------------------------------
  13     Cannot call method format() on Safe\\DateTimeImmutable|null.
 ------ ----------------------------------------------------------------------------

 ------ ----------------------------------------------------------------------------
  Line   www/ebooks/get.php
 ------ ----------------------------------------------------------------------------
  126    Parameter \#1 $num of function number\_format expects float, int|null given.
  178    Cannot call method format() on Safe\\DateTimeImmutable|null.
  179    Cannot call method format() on Safe\\DateTimeImmutable|null.
 ------ ----------------------------------------------------------------------------

These errors are on EbookCreated, EbookUpdated, and WordCount, which can now be null. I'll fix the errors eventually with more checks, but at the moment it didn't seem worth it because we knew these fields are OK for published ebooks.
3. Sorting placeholders at the end in search results
Of the 4 sort orders on the search results page:

S.E. release date
Author name
Reading ease
Length

Placeholders don't have any of those properties set. (They do have an author, but not an author's SortName.) Therefore I put the placeholders at the end of the search results. I had to modify the queries that used Author name and Length as sort orders to put them at the end. I think this is the right thing to do, I just wanted to call it out here since it was mixed in with other frontend changes.
Getting started
To get started, you can create your own placeholders with the form at /ebook-placeholders/new or bulk add placeholders from the spreadsheet.
Bulk adding placeholders from the spreadsheet
Use this gist for help: https://gist.github.com/colagrosso/7fc986a0844157af7cd048f5f0018541. It has 3 files:

convert-ebook-placeholders-from-csv-to-sql
se-placeholders.csv
se-placeholders.sql

You can download a CSV from the spreadsheet. Note that the spreadsheet has two tabs ("List" and "Copyrighted works"). I combined the two tabs into a single CSV, se-placeholders.csv. You can use that or a subset of the CSV.
The script converts the (hardcoded) se-placeholders.csv file into a sequence of SQL statements to insert the placeholders into the DB. Run it like this:
./convert-ebook-placeholders-from-csv-to-sql > se-placeholders.sql
mysql se < se-placeholders.sql

The se-placeholders.sql in the gist is the full set of SQL statements for the combined CSV. You can spot check it to ensure that the statements look correct.

After a quick test:

Missing SQL to add CanCreateEbookPlaceholder to Benefits table
The CanCreateEbookPlaceholder column should be named CanCreateEbookPlaceholders for consistency
I added one placeholder for Agatha Christie, Poirot series. All other info was blank. But after it was added, the placeholder listed two authors, A. Merritt and Agatha Christie.

I stopped there for now.

Sorry for the trouble.
You probably ran the SQL yourself but for future reference, here is the SQL I forgot to include here:
ALTER TABLE Benefits ADD COLUMN `CanCreateEbookPlaceholders` tinyint(1) unsigned NOT NULL DEFAULT 0 after `CanEditUsers`;

I just made CanCreateEbookPlaceholders plural in e3f0342e5587c7836b40e146d3fb1cd951ebfce0 and pushed that commit to the placeholders branch. If you pull from placeholders, you'll have to update your DB again.
That's a bummer that your first placeholder didn't work. I can't reproduce the problem yet.
It's a long shot, but is it possible that A. Merritt was a stale entry in the Contributors table from a previous ebook? Sometimes for testing I'll drop and recreate my Ebooks table but forget to do the same with Contributors, CollectionEbooks, etc.
Here's what I got from the Firefox and Chrome web developer tools Network menu when I submit the form:
Firefox:
-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="author-name-1"

Agatha Christie
-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="author-name-2"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="author-name-3"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="translator-name-1"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="translator-name-2"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-title"

A test placeholder
-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-placeholder-year-published"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="collection-name-1"

Poirot
-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="sequence-number-collection-name-1"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="collection-name-2"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="sequence-number-collection-name-2"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="collection-name-3"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="sequence-number-collection-name-3"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-placeholder-difficulty"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-placeholder-status"

wanted
-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-placeholder-transcription-url"

-----------------------------182822189336008064892524579620
Content-Disposition: form-data; name="ebook-placeholder-notes"

-----------------------------182822189336008064892524579620--

Chrome:
author-name-1: Agatha Christie
author-name-2:
author-name-3:
translator-name-1:
translator-name-2:
ebook-title: A test placeholder 2
ebook-placeholder-year-published:
collection-name-1: Poirot
sequence-number-collection-name-1:
collection-name-2:
sequence-number-collection-name-2:
collection-name-3:
sequence-number-collection-name-3:
ebook-placeholder-difficulty:
ebook-placeholder-status: wanted
ebook-placeholder-transcription-url:
ebook-placeholder-notes:

So there was no extra author submitted by accident. I'll keep looking for a problem.

Might have been a stale entry but even if it was, why were two contributors added?

Yup, just tried again, added an ebook with Agatha Christie as the only author, but the created placeholder has two authors: A. N. Afanasyev and Agatha Christie

A stale entry in the Contributors table would mean that there would be two rows that match this query:
select * from Contributors where EbookId = 4000;
+---------+-----------------+-----------------+----------+--------------+----------+----------+-----------+-----------+
| EbookId | Name            | UrlName         | SortName | WikipediaUrl | MarcRole | FullName | NacoafUrl | SortOrder |
+---------+-----------------+-----------------+----------+--------------+----------+----------+-----------+-----------+
|    4000 | Agatha Christie | agatha-christie | NULL     | NULL         | aut      | NULL     | NULL      |         0 |
+---------+-----------------+-----------------+----------+--------------+----------+----------+-----------+-----------+

Could you take a look at your Contributors table? It's a long shot, but I'm wondering if there stale entries there. I don't think the placeholder form is adding the A. Merritt or A. N. Afanasyev rows. I'm guessing they were already there. If you run a
select * from Contributors;

before and after submitting the placeholder form, maybe you'll see what was added and what was already there.

OK, that seems to have been the problem. After truncating the database and starting from scratch it works. I'll continue to review.

Right on, thanks.

OK, I've pushed a commit that does some basic front-end formatting. I think this will be good for now.
Another thing I noticed is that placeholders appear in /ebook when no search parameters are set. I think we should not show placeholders in that case - only if the user has actually entered some parameters in the search form.

Another thing I noticed is that placeholders appear in /ebooks when no search parameters are set. I think we should not show placeholders in that case - only if the user has actually entered some parameters in the search form.

Yep, agreed. I sent #431 to handle that.
New problem: Rendering on Chrome

You corrected this line in templates/EbookGrid.php:

to the self-closing tag:

but that seems to be what's causing the problem on Chrome. Changing it back to

 makes it work on Chrome.
I know Firefox is the preferred browser, and the self-closing tag is valid XHTML. I'm out of my depth, so consider this just a friendly bug report, no stake in how to fix it. I can provide more details or try other fixes if it would help.

Thanks, I'll just change it back.

OK, everything looks good. I've merged this into master and it's now live on the site.
Excellent work!
I squashed the branch, so for further work please create a new branch off master.
Next up in order of priority:

Authors who have only placeholder works end up at a 404. For example The Maltese Falcon works but Dashiell Hammet 404s. We should return a page listing all the placeholders.
Quick fix: In the EbookPlaceholderForm.php template, there are several <fieldset>s  that only have a single child . We should restructure that to remove those <fieldset>s as that doesn't make semantic sense. For example line 79, line 105, line 130 etc.
When we release an ebook that was a placeholder, does the system delete the placeholder? It should.
Update the wanted list to use placeholders from DB
Form to update placeholders

Woohoo, congrats on the launch.

When we release an ebook that was a placeholder, does the system delete the placeholder? It should.

Yes, it does.
I'll get on the other fixes you listed above. Two others:

[ ] Mobile placeholder oulines are too big
[ ] That The Maltese Falcon placeholder is in the wrong collection. It should be a member of The Guardian’s Best 100 Novels in English (2015), but it's in a collection lacking the initial "The." Sorry about that. I thought I fixed all of those in the spreadsheet, but I missed that one. I did a quick pass over the collections page and didn't see any other problems.

To fix the Maltese Falcon collection data, you can run this SQL:
DELETE FROM CollectionEbooks WHERE EbookId = (SELECT EbookId FROM Ebooks WHERE Identifier = "url:https://standardebooks.org/ebooks/dashiell-hammet/the-maltese-falcon");

DELETE FROM Collections WHERE UrlName = 'guardians-best-100-novels-in-english-2015';

INSERT INTO CollectionEbooks (EbookId, CollectionId, SequenceNumber, SortOrder) VALUES ((SELECT EbookId FROM Ebooks WHERE Identifier = "url:https://standardebooks.org/ebooks/dashiell-hammet/the-maltese-falcon"), (SELECT CollectionId FROM Collections WHERE UrlName = "the-guardians-best-100-novels-in-english-2015"), 54, 0);

Thanks, I fixed it!!

Also, this just came up - when adding a new placeholder that creates a new collection, we need to have a dropdown to specify whether the collection is a set or a series. Currently Collection.Type is nullable but it should not be, I updated that in master.
We can do something similar to what we did for death year of artists of an artwork - prefill from the collection name from the datalist; if the collection already exists then leave the type empty to not change it. If the collection does not exist then selecting a type, either set or series, is required.

Let's move further discussion to https://github.com/standardebooks/web/issues/436


Bug🐛: Exclude files from page generation

Describe the bug.
Based on issue #239, exclude the following files from page generation:

MAINTAINERS.md
SUMMARY.md

Describe the steps to reproduce the behavior
n/a
Expected behavior.
Pages should not be generated on the web site based on those two markdown files.  Hopefully, nobody is linking to them.
Screenshots.
No response
Operating environment
n/a
Additional context
No response

Dont forget, we delete SUMMARY.md in #250


Bug: google tag manager use browser page title and not screenName visible in debug mode

Info
Hi,
I configure vue-gtm to user router. When I set debug mode I can site route name parameter in screenview log. When I set meta gtm in route, screenview has this meta as value. But for this 2 cases, browser page title is sent to google analtytics.
Configuration :
Vue.use(VueGtm, {
  id: 'GTM-XXXXX', // Your GTM single container ID or array of container ids ['GTM-xxxxxx', 'GTM-yyyyyy']
  defer: false, // defaults to false. Script can be set to `defer` to increase page-load-time at the cost of less accurate results (in case visitor leaves before script is loaded, which is unlikely but possible)
  enabled: true, // defaults to true. Plugin can be disabled by setting this to false for Ex: enabled: !!GDPR_Cookie (optional)
  debug: true, // Whether or not display console logs debugs (optional)
  loadScript: true, // Whether or not to load the GTM Script (Helpful if you are including GTM manually, but need the dataLayer functionality in your components) (optional)
  vueRouter: router, // Pass the router instance to automatically sync with router (optional)
  // ignoredViews: ['homepage'], // Don't trigger events for specified router names (case insensitive) (optional)
  trackOnNextTick: false, // Whether or not call trackView in Vue.nextTick
});

Log in debug mode :
{screenName: "Administration", path: "/Administration/Users"}
Data sent to google analytics : dt parameter is browser page title.
Thank you for your help

Tool
Version

Plugin
v3.1.0-vue2

Vue
v2.6.11

Node
vx.x.x

So indeed, I found your "requested" line in code
https://github.com/mib200/vue-gtm/blob/c38e1910c20ef23d970eb76ed7fcd3b3c1467816/src/index.ts#L95
So it never was accepting a property like screenName 🤔
I personally also never heard of screenName, is it something new?
I will manage this issue therefore as a feature-request and not a bug, hope that's ok for you 🙂

Had a quick look into vue-router and vue-router-next repos, but didn't find anything about screenName 🤔
Can you please give me any sources where this is coming from?

Maybe my explanation was incorrect : in browser console I can see :
VueGtm : Dispatching TrackView {screenName: "MyScreenTitleFromRouter", path: "/Path/MyPage"}
In console, screenName is equal to : const name: string = to.meta.gtm || to.name;
but google sent browser page title

This comes from browser console

Wait a second... Why is it calling google-analytics? This repo is for googletagmanager 👀
Are you in the correct repo? Or am I completely confused now 😐

Yes I'm in the correct repo.
I use vue-gtm and I added a google analytics tag

Ok, I'm not so deeply into this repo cause it's created by @mib200
So how does this work? You using this plugin and added a GA Tag in the GTM Console. But how are something like the GA url is injected to be called from your code?
This plugin never injects GA but GTM. So there needs to be a second plugin in your deps.
Can you give me examples/screenshots of your vue routers object and your package.json? Or if it's open source a link to your repo?

We only have this for now: https://github.com/mib200/vue-gtm#sync-gtm-with-your-router
A parameter dt isn't known by us 🙁 We also don't inject this parameter in any way

I thought it was managed by google tag manager script

Ok, interesting ...
So to clarify what you want:
VueGtm should read route.name or route.meta.gtm and this value should be called as ...&dt=${routeName}...?
I'm not quite sure if you maybe need to change something in your GTM Console 🤔
I never used GA- or GTM-Console myself 🙁
I just tookover this repo to grant maintenance, but this is the first issue I don't know enough about currently
I feel a bit sorry 😞
So it would be very helpful to give me every information what you can give me
Like package.json deps/devDeps and examples of your routers and screenshots from your gtm/ga console
Just make sure to censore everything that's confidential
I'm now away for some time, because I'm not at home for some days but just have my Mac with me
So maybe this issue will be stretched about some days, sorry for that

You're right. Maybe it's google tag manager script that override route name.
If there is something to change in gtm console, I don't know what.

I'm personally lost on this issue, and I'm sorry I cannot give you the support you deserve
Maybe StackOverflow can help you
I found this: https://stackoverflow.com/questions/56702706/how-to-pass-the-page-name-via-gtm-to-ga
So could you try to add e.g. something like {pageTitle: ???} via dataLayer.push(...)?
You can find an example in the second code block of Documentation
If you open a question in StackOverflow, please copy a link into this issue

No problem.
Thank you for your help.
I'll post an answer if I find the solution.

@Bkl741 did you found a solution
Also feel free to close this issue from your side :slightly_smiling_face:

If there are any further thinks, lets talk about this in the new repo(s) at https://github.com/gtm-support/vue-gtm or https://github.com/gtm-support/core


Prow: auto-generation of controllers following code-generator releases should validate e2e tests passing

Is your feature request related to a problem?
When auto-generating controllers following a release of code-generator, some of the PRs that are created as part of the process end up failing e2e tests even though the code generation step completes successfully.
Describe the solution you'd like
When prow starts auto-generation of all controllers, the pass/fail for each controller should take into account not JUST whether code generation succeeds for the controller, but ALSO whether the e2e tests associated with the subsequent PR pass or fail.  This status should be reported back upstream in the Prow dashboard for review by the release manager.
Describe alternatives you've considered
Checking on every PR manually to verify whether its tests pass or fail.

Now that we have 40+ controller, running all the e2e tests before generating the PRs isn't really optimal.. +PRs will always run e2e now matter what.
Closing for now, we can re-open if needed.
/close


fix(webpack): Change X-Stormpath-Agent to read versions from package.json and Angular

Fixes #12.

Cool @mraible ! I just spent some time with this, here’s my feedback:

I tried adding &storage=cookies, but I’m still seeing the Authorization header being sent to the Client API?

How can I test this in the “local” mode, e.g. against a local framework integration demo? I tried the sample project, and did npm link angular-stormpath, but I get this error (is there something else I need to do?):

ERROR in ./src/app/app.component.ts
Module not found: Error: Can't resolve 'angular-stormpath' in '/Users/robert/projects/stormpath-angular2-express-example/src/app'
 @ ./src/app/app.component.ts 11:0-46
 @ ./src/app/index.ts
 @ ./src/main.ts
 @ multi main

I’m not seeing any token refresh behavior in here?  In our other SDKs, we’re taking this approach:

The access token getter returns a promise
If the access token has expired, we attempt to get a new one from the /oauth/token endpoint, using the refresh token.  We don’t resolve the promise until we know if we got a new access token

I’m not sure if we talked about it, but we decided that the X-Stormpath-Agent header should always be sent if the URI ends in one of our known URLS, such as /login, /register, etc.  The 80% case here is that those endpoints are provided by our Client API or a framework integration, which do the right thing for core, so we should send this header always if the endpoint is one of ours.

@robertjd I'm guessing you meant to leave this comment on https://github.com/stormpath/stormpath-sdk-angular/pull/37 instead?

@robertjd I refactored things so X-Stormpath-Agent is added to all requests to Stormpath endpoints.


continues on from #509 without exifr

finished @bockoblur awesome work by writing a small parser to only get require fields for jpg resolution
also created a seperate module that will return the ppi for a jpg, jfif or png if this pull request doesnt get approved https://github.com/BoLaMN/get-ppi
implements #504

Hello @BoLaMN! Thanks so much for working on this! Apologies for my late response. I've been very busy these past few months taking care of some personal stuff and starting my new job at GitHub 🙂
I'm hoping to get around to reviewing this PR in the next few weeks now that I've got some more free time.
Please note that you'll need to either update this PR (via a force push) or open a new PR with your changes.  Please read https://github.com/Hopding/pdf-lib#git-history-rewrite for details. Apologies for the hassle!

@BoLaMN Happy to reopen and review your work if you get around to reapplying your changes on the latest master 🙂


changing user import (closes #2666)

Now, group names are given in the csv file. You can take the default (englisch) name or the translated name for the default groups. E.g. for me in Germany I can take Delegates or Delegierte. Groups, that are new become created (compare to motions import, categories gets created, too)

rebased.


Fix crashes when loading an invalid skin texture

Fixes #26 by making sure the texture isnt null

Please test this cause I cant figure out how to build all the versions

This seems sound; I'll test it a while later.
I completely forgot about this issue since I forgot to re-open it. Thanks.


WinUI3 C++/winrt packaged SmartCardReader application does not terminate process in a timely manner

Describe the bug
An application uses winrt::Windows::Devices::Enumeration::DeviceWatcher and creates a winrt::Windows::Devices::SmartCards::SmartCardReader instance by calling
co_await winrt::Windows::Devices::Enumeration::DeviceInformation::FindAllAsync(SmartCardReader::GetDeviceSelector())
and then create a reader instance with co_await SmartCardReader::FromIdAsync(device.Id()) from the collection above.
Start the application and connect the smart card reader. Close the application. Open TaskMonitor and observe that application process is still running, Stack trace of that process shows this:
>	ntdll.dll!NtWaitForSingleObject()	Unknown
 	KERNELBASE.dll!WaitForSingleObjectEx()	Unknown
 	Windows.Devices.SmartCards.dll!Windows::Devices::SmartCards::SmartCardReaderEventManager::WaitForEvent(void *,unsigned long)	Unknown
 	Windows.Devices.SmartCards.dll!Windows::Devices::SmartCards::SmartCardReaderEventManager::InternalDeinitialize(void)	Unknown
 	Windows.Devices.SmartCards.dll!ComErrorContract<<lambda_da5d591f47daddf166a5d7c13fa896d9>>()	Unknown
 	Windows.Devices.SmartCards.dll!Windows::Devices::SmartCards::SmartCardReaderEventManager::Deinitialize(void)	Unknown
 	Windows.Devices.SmartCards.dll!Windows::Devices::SmartCards::SmartCardReaderEventManager::~SmartCardReaderEventManager(void)	Unknown
 	ucrtbase.dll!<lambda>(void)()	Unknown
 	ucrtbase.dll!__crt_seh_guarded_call<int>::operator()<<lambda_7777bce6b2f8c936911f934f8298dc43>,<lambda>(void) &,<lambda>(void)>()	Unknown
 	ucrtbase.dll!_execute_onexit_table()	Unknown
 	ucrtbase.dll!__crt_state_management::wrapped_invoke<int (*)(struct _onexit_table_t *),struct _onexit_table_t *,int>(int (*)(struct _onexit_table_t *),struct _onexit_table_t *)	Unknown
 	Windows.Devices.SmartCards.dll!dllmain_crt_process_detach()	Unknown
 	Windows.Devices.SmartCards.dll!dllmain_dispatch()	Unknown
 	ntdll.dll!LdrpCallInitRoutine()	Unknown
 	ntdll.dll!LdrShutdownProcess()	Unknown
 	ntdll.dll!RtlExitUserProcess()	Unknown
 	kernel32.dll!ExitProcessImplementation()	Unknown
 	ucrtbased.dll!exit_or_terminate_process(const unsigned int return_code) Line 138	C++
 	ucrtbased.dll!common_exit(const int return_code, const _crt_exit_cleanup_mode cleanup_mode, const _crt_exit_return_mode return_mode) Line 274	C++
 	ucrtbased.dll!exit(int return_code) Line 288	C++
 	winrtsmartcardtest.exe!00007ff7ee15021b()	Unknown
 	winrtsmartcardtest.exe!00007ff7ee1500be()	Unknown
 	winrtsmartcardtest.exe!00007ff7ee1503ae()	Unknown
 	kernel32.dll!BaseThreadInitThunk()	Unknown
 	ntdll.dll!RtlUserThreadStart()	Unknown

After a while the process ends.
If a call to winrt::Windows::Devices::Enumeration::DeviceInformation::FindAllAsync is commented out, the application process ends immediately when the application main window is closed. Application uses deviceWatcher.Stop() call during its cleanup/shutdown routine.
This process exit delay prevents single-app-instance application type from running again when a previous instance has just closed.
Steps to reproduce the bug
Use any of the samples from https://github.com/microsoft/Windows-universal-samples/tree/main/Samples/DeviceEnumerationAndPairing/cppwinrt and add a call to winrt::Windows::Devices::Enumeration::DeviceWatcher and winrt::Windows::Devices::Enumeration::DeviceInformation::FindAllAsync(SmartCardReader::GetDeviceSelector()).
Expected behavior
An app should exit the same way with or without card reader attached.
Screenshots
No response
NuGet package version
None
Packaging type
Packaged (MSIX)
Windows version
Windows 11 version 22H2 (22621, 2022 Update)
IDE
Other
Additional context
No response

Does this only appear in when using the WinUI 3 library, or can you get the same thing to happen if you use the smart card reader in a Windows API application?

What about using the device and smart card WinRT API in a Windows API application?

The same problem - it is calling into Windows.Devices.SmartCards.dll which hangs in WaitForSingleObjectEx during application exit.


Adding custom font family?

Hi,
Is it possible to add your own font to the editor? Let's say Open Sans fx?

Duplicate of #26


fix(controller): fix nil pointer dereference in BDC controller due to non existent BD

Signed-off-by: Akhil Mohan<EMAIL_ADDRESS>Why is this PR required? What issue does it fix?:
When a Claimed BD is manually deleted by removing the finalizer, and later when the user
tries to delete BDC, NDM operator will continuously crash. This because NDM operator
tries to release a non existent BD.
What this PR does?:
adds a check to throw an error when the claimed BD is not found. This PR also adds an event to BDC when BlockDevice is not found.
Does this PR require any upgrade changes?:
No
If the changes in this PR are manually verified, list down the scenarios covered::
Any additional information for your reviewer? :
Mention if this PR is part of any design or a continuation of previous PRs
Checklist:

[x] Fixes #439
[x] PR Title follows the convention of  <type>(<scope>): <subject>
[x] Has the change log section been updated?
[ ] Commit has unit tests
[ ] Commit has integration tests
[ ] (Optional) Are upgrade changes included in this PR? If not, mention the issue/PR to track:
[ ] (Optional) If documentation changes are required, which issue on https://github.com/openebs/openebs-docs is used to track them:

Codecov Report

Merging #479 into master will decrease coverage by 0.24%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #479      +/-   ##
==========================================
- Coverage   40.40%   40.15%   -0.25%
==========================================
  Files          72       72
  Lines        3527     3531       +4
==========================================
- Hits         1425     1418       -7
- Misses       1993     2002       +9
- Partials      109      111       +2

Impacted Files
Coverage Δ

...er/blockdeviceclaim/blockdeviceclaim_controller.go
39.24% <0.00%> (-0.87%)
:arrow_down:

cmd/ndm_daemonset/probe/eventhandler.go
42.85% <0.00%> (-6.13%)
:arrow_down:

cmd/ndm_daemonset/probe/udevprobe.go
57.14% <0.00%> (-2.60%)
:arrow_down:

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 2a859fe...a868d8e. Read the comment docs.


I need to write rspec code for model I have overridden any help

I need to write rspec code for model I have overridden any help. I have also asked the question here :
http://stackoverflow.com/questions/28214290/rspc-code-for-models-decorators

You should be describing Forem::Post, not PostDecorator. The class that you're wanting to test is Forem::Post.


Fixed bug when creating multiple motions at once (problem with unique…

… motion identifier). Fixed #3062.
@emanuelschuetze Please test again with SQLite3, PostgreSQL, Redis and Non-Redis.

Test A: Import of 55 motions

sqlite + 1 worker + daphne: OK
sqlite + 1 worker + daphne + redis: OK
postgres + 1 worker + daphne: OK
postgres + 1 worker + daphne + redis: OK
postgres + 4 worker + daphne:  OK
postgres + 4 worker + daphne + redis: OK

Test B: Set state from "published" to "permitted" for all selected motions

sqlite + 1 worker + daphne: OK
sqlite + 1 worker + daphne + redis: OK
postgres + 1 worker + daphne: OK
postgres + 1 worker + daphne + redis: OK
postgres + 4 worker + daphne: OK! (failed with current master)
postgres + 4 worker + daphne + redis: OK! (failed with current master)

So looks good for me. Any more tests required?


How to interpret VarDict output in vcf format

We ran VarDict on our panel sequence data, and got a question to interpret some output as vcf format.
When a variant has 'TYPE=DUP', in the 8th column, there are additional 2 values: 'SVTYPE=DUP;SVLEN=287'. What does 'SVLEN' mean? Does this mean the sequence starting from chr13:28033908 with length of 287 is duplicated as tandem?
    V1       V2 V3 V4    V5  V6   V7

3389 chr13 28033908  .  C  184 PASS
V8
3389 SAMPLE=Horizon-CMP001;TYPE=DUP;DP=882;VD=47;AF=0.0533;BIAS=0:2;REFBIAS=0:0;VARBIAS=29:18;PMEAN=27.9;PSTD=1;QUAL=33.3;QSTD=1;SBF=1;ODDRATIO=0;MQ=60;SN=94;HIAF=1.0000;ADJAF=0.0533;SHIFT3=0;MSI=0;MSILEN=0;NM=0.1;HICNT=47;HICOV=47;LSEQ=TTTCAGCATTTTGACGGCAA;RSEQ=GGCTTTCATACCTAAATTGC;DUPRATE=0;SVTYPE=DUP;SVLEN=287;SPLITREAD=29;SPANPAIR=18
V9                              V10
3389 GT:DP:VD:AD:AF:RD:ALD 0/1:882:47:0,47:0.0533:0,0:29,18
Could any one please explain to me the meanings of:
DUPRATE, SPLITREAD, SPANPAIR
?

Hello @Smurf-2020,
That is right, SVLEN is a length of structural segment in basepairs, we simply calculate it as end minus start position.
On the other fields:
DUPRATE - it is a duplication rate in fraction, it is calculated as ratio of number of duplicated reads to total number of reads. It will be shown only with -t/--dedup option.
SPLITREAD - number of "soft clip"/split reads supporting SV.
SPANPAIR - number of discordant pairs supporting SV.


ios SDK issue

Hi
i am implemented the sdk in my app, working fine but i got this error:
When the map download state  changed.
Error while reading offline map urls: Error Domain=MBXMapKitErrorDomain Code=-5 "Failed to execute query" UserInfo=0x79a6b020 {NSLocalizedFailureReason=There was an sqlite error while executing a query on database /Users/vinod/Library/Developer/CoreSimulator/Devices/3847BC57-C44D-457D-99D5-3249EABC2552/data/Containers/Data/Application/D2337F6C-F899-4115-A845-FC90C238B41A/Library/Application Support/MBXMapKit/OfflineMaps/newdatabase.partial: disk I/O error, NSLocalizedDescription=Failed to execute query}
2015-01-30 14:56:59.609 Agralogic[5443:288636] -[HomeViewController offlineMapDownloader:stateChangedTo:] [Line 903] MBXOfflineMapDownloaderStateRunning
Can any one help me. How can i solve this issue on my app.
Thanks for help.

Hi @vinod1988,
You didn't mention which revision of MBXMapKit you're using (a specific tag, cocoapods, HEAD of master branch, etc), so for the links below, I'll use the 0.5.0 tag for the master.
"Error while reading offline map urls:..." comes from startDownloading: in MBXOfflineMapDownloader.m at a point where it is attempting to read a list of urls from an sqlite database so that it can begin downloading them. The urls are supposed to be placed into the database by beginDownloadingMapID:....
The "Failed to execute query" part of the error message comes from the guts of MBXOfflineMapDownloader.m's sqlite code. My guess is that the sqlite code can find and read the database, but that the file is somehow corrupted or incorrectly initialized.
Things you could try:

Find the sqlite file (.../OfflineMaps/newdatabase.partial), open it up with the sqlite3 command line shell, and see what's going on with the schema and the tables. Compare that to what you get from putting a breakpoint on beginDownloadingMapID:... and tracing through as it attempts to write urls into the database.

It's possible that the problem is caused by a corrupt sqlite file. You could try doing a "Reset Content and Settings..." in the simulator, doing a clean build in Xcode, then running it again to see if the problem is repeatable.

There's a possibility you're seeing a bug caused by MBXMapKit needing to catch up with changes in how the Mapbox API works, so you should probably take a look at issue #143 and the offlineFetch branch.

/cc @incanus @bleege

It's possible that the problem is caused by a corrupt sqlite file. You could try doing a "Reset Content and Settings..." in the simulator, doing a clean build in Xcode, then running it again to see if the problem is repeatable.

This sounds mostly likely to me. @vinod1988 can you confirm with a fresh install?


the node run far away when click a node to release its fixed position

firstly, all nodes in graph are fixed position
the node drag event i release its fixed position to make it can move
dragend() {
d.fx = null
d.fy = null
}
as a result , the node will run far away ,is there a way to make it move near around its origin position?

Hello,
Quite a few examples of d3-force are available at Observable and blockbuilder.
To ask for help, please use Stack Overflow tag d3.js. Thousands of D3-related questions have been asked there, and some answers may be relevant to you.
When asking for help, please include a link to demonstrate the issue, preferably as an Observable notebook. It is often impossible to debug from code snippets alone. Isolate the issue and reduce your code as much as possible before asking for help. The less code you post, the easier it is for someone to debug, and the more likely you are to get a helpful response.
If you have a question about D3’s behavior and want to discuss it with other users, also consider the d3-js Google Group or joining the d3-js Slack.
Thank you! 🤖


add blueprint view and ui for requested revisions

Description
resubmission UI and blueprint fixes.
Please see this card for new considerations on locking off the rest of the form:
https://hous-bssb.atlassian.net/browse/BPHH-1819
What type of PR is this? (check all applicable)

[x ] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📦 Chore (Release)
[ ] ✅ Test

Related Tickets & Documents
https://hous-bssb.atlassian.net/browse/BPHH-1461
Steps to QA
See steps in card

see https://github.com/bcgov/HOUS-permit-portal/pull/576

https://github.com/bcgov/HOUS-permit-portal/pull/576


the resolver is very slow

When I use the included resolver, my (few) tests take more than 7 seconds, taking a while to start running. When I use the default resolver, the tests take little over 1 second. That's a massive difference and has a real impact on how easy it is to develop with tests.
The comment says:
uses a webpack style resolver, the default one has many issues.
It's using https://www.npmjs.com/package/enhanced-resolve-jest which in turn uses https://github.com/webpack/enhanced-resolve
I'd be interested in seeing what I'm paying for in some more detail. And maybe there's a way to configure this resolver to be faster? (I tried upgrading enhanced-resolver to 5.9.3, the latest release, but it made no difference)

It's also interesting to speculate why enhanced-resolver is so much slower. Is this because it does more work per module, or because it actually finds many more modules and needs to disregard them?


Can swft fine-tuning be done in InternVL−Chat−V1.5-Int8 version?

Have you had any success with this please? Following the tutorial it gives, I found that the 1.5 version can be fine-tuned, but the 1.5-int8 fine-tuning reports an error, seemingly because of a datatype issue

This issue has been inactive for two months, so I am closing it. If you have any further questions or encounter any problems, please feel free to reopen it. Thank you!


[SPARK-47739][SQL] Register logical avro type

What changes were proposed in this pull request?
In this pull request I propose that we register logical avro types when we initialize AvroUtils and AvroFileFormat, otherwise for first schema discovery we might get wrong result on very first execution after spark starts.

example
val new_schema = """
     | {
     |   "type": "record",
     |   "name": "Entry",
     |   "fields": [
     |     {
     |       "name": "rate",
     |       "type": [
     |         "null",
     |         {
     |           "type": "long",
     |           "logicalType": "custom-decimal",
     |           "precision": 38,
     |           "scale": 9
     |         }
     |       ],
     |       "default": null
     |     }
     |   ]
     | }""".stripMargin
spark.read.format("avro").option("avroSchema", new_schema).load().printSchema // maps to long - WRONG
spark.read.format("avro").option("avroSchema", new_schema).load().printSchema // maps to Decimal - CORRECT

Why are the changes needed?
To fix issue with resolving avro schema upon spark startup.
Does this PR introduce any user-facing change?
No, its a bugfix
How was this patch tested?
Unit tests
Was this patch authored or co-authored using generative AI tooling?
No

@dongjoon-hyun thanks for the review. You are absolutely right. Your tests are passing because you are running them in batch, and this regression only really happens if you call don't initalize LogicalTypes prior to resolving schema, hence I would assume that some test registered it and as a side effect you get tests passing.
Given that LogicalTypes is an external static class, part of Apache Avro I am not sure how to resolve this reliably.
One idea is to separate this into different Suite, but this also does not give complete protection, as multiple suites can be run within same process, hence hitting same issue as if test was part of suite.
Do you have any suggestion how to test this static object initalization when we do not have access to teardown api of these classes ?

@dongjoon-hyun I've isolated test in separate suite to address issue you found. This does not eliminate it if multiple suites are run however.
Please take another look and i'd appreciate your feedback

To @milastdbx , why did you request a review to me when you didn't address my comment?

Sorry for the wrong ping. I didn't check whether push succeeded. It turns out it failed because there was a commit inbetween, and i didn't notice.


Sort matches by filename

In multi-file playbooks all matches are currently strictly sorted by filename - therefore different files are wildly mixed together. This is not to be expected at all and produces a quite confusing output. Sorting by code location should first order by filename and then by line number, eventually by rule number if there are multiple reportings per line.
Before:
$ ansible-lint -p playbooks.yml
error_b.yml:9: [EANSIBLE0012] Commands should not change things if nothing needs doing
error_a.yml:12: [EANSIBLE0012] Commands should not change things if nothing needs doing
error_b.yml:13: [EANSIBLE0012] Commands should not change things if nothing needs doing

After:
$ ansible-lint -p playbooks.yml
error_a.yml:12: [EANSIBLE0012] Commands should not change things if nothing needs doing
error_b.yml:9: [EANSIBLE0012] Commands should not change things if nothing needs doing
error_b.yml:13: [EANSIBLE0012] Commands should not change things if nothing needs doing

Followup to #219
A possible improvement would be to group the output by file, that would make it easier to recognize context.
Maybe there is a use case to make primary sorting value configurable, but sorting by file and line number should be the expected default.

❤ :+1:

Yep, unexpected side effect of what was supposed to be a genuine improvement - thanks for the fix.

Updated to version 3.4.7, tagged and pushed to pypi


Setting up a broadcasting provider server (IDSCPv2) not behaving as expected

Describe the bug
The IDSCPv2 examples include some route examples to do a broadcast, where the consumer is the broadcasting server and the provider is the receiving client. We need to do it the other way around, with a broadcasting provider server sending messages to all of its connected client consumers.
So I added the following route to the provider routes (we have a separate data generator publishing messages into the forklift/+/position MQTT topic):
  <route id="idscp2SenderServer">
    <from uri="paho:forklift/+/position?brokerUrl=tcp://mqtt-broker:1883"/>
    <convertBodyTo type="java.lang.byte[]" charset="utf-16"/>
    <setHeader name="idscp2-header">
		<simple>${header.CamelMqttTopic}</simple>
    </setHeader>
    <log message="Server broadcast to connected clients: ${body} ${headers}"/>
    <to uri="idscp2server://<IP_ADDRESS>:29292?sslContextParameters=#serverSslContext"/>
  </route>

and the following route to the consumer routes (where forkliftPosition is defined as a camel-cxf:cxfEndpoint):
  <route id="idscp2Client">
    <from uri="idscp2client://provider-core:29292?sslContextParameters=#clientSslContext"/>
    <log message="Client received: ${body} ${headers}"/>
    <to uri="forkliftPosition"/>
  </route>

When the provider is started at first, the log correctly contains the messages from the server route. However, when the consumer is started and tries to connect to the server, the logs of both the consumer and provider show these messages and do not progress anymore:
ForkJoinPool.commonPool-worker-5 | DefaultDapsDriver                | 57 - idscp2 - 1.0.0 | Retrieving Dynamic Attribute Token...
ForkJoinPool.commonPool-worker-5 | DefaultDapsDriver                | 57 - idscp2 - 1.0.0 | Acquire DAT from https://daps.aisec.fraunhofer.de

The provider route is then stopped because of a timeout and the messages never reach the conusmer.
To Reproduce
Steps to reproduce the behavior:

Clone the repository
Change the consumer and provider routes in the IDSCPv2 examples to include the routes mentioned above. You also need to change the names of the clientSslContext and serverSslContext defined in the provider and consumer routes respectively.
Start the TTP, Provider and Consumer docker containers

Expected behavior
The messages should be broadcast to all connected clients (in this case one).
Screenshots and logs
provider-karaf.log (connection details: line 2448)
consumer-karaf.log (connection details: line 1288)
Note: In our use case, we are sending the messages as a byte array so the messages shown in the provider logs will contain weird characters as they are not strings.
Environment (please complete the following information):

OS: Docker Desktop on Windows 10 x64
Environment: Docker Desktop
Version: 26ec8c8

Additional context
In all of the examples included in the repository, both with IDSCPv1 and IDSCPv2, the consumer is treated as a "server" and the provider as a "client". Is there a specific reason for that? Can we just switch them so that the provider is the server (in particular in this case a broadcasting server) and the consumer(s) is the client(s)? For further context, we want the provider to send the same messages to all connected consumers, without having to specify the endpoint of each consumer client separately in the provider routes as is done with the non-broadcasting IDSCPv2 example routes (example-idscp2-client.xml).

Regarding the server/client naming: No, there's no specific reason. That actually doesn't even make sense in our broadcast example, because it is technically identical to what you have done. I missed to rename some files when constructing the broadcast example from the other one, that's the only reason. I just fixed this for develop.
Regarding the issue itself:
I can't see anything wrong in your work, so I assume that this is a connectivity issue, maybe some weird firewall is blocking or delaying the connection to the DAPS? To confirm this hypothesis, you may start our "plain" broadcast example with the new, dedicated YAML files I just created. This is working without any issues here on my machine.

If you did like milux said and you keep getting DAPS connectivity issues, i can provide you with a script to test token retrieval...

I just tried the new examples as well as my code and it worked without making any changes. It must've been a temporary issue with the token retrieval.
Thanks for looking into this and uploading the new examples.


*: use global variable instead of config for TxnCommitBatchSize

Signed-off-by: Jack Yu<EMAIL_ADDRESS>As title says. Asked by @morgo.

What is the difference to use a global atomic variable?

See https://github.com/pingcap/tidb/pull/33507#issuecomment-1081352558 @disksing .
It is easy to modify online, but currently the semantics of set global are confusing here. As a result, set global for the different variables are not in the same scope.


Runite Carmot Staff disconnects players

Runite Carmot Staff forces players to be disconnected on server when used

sorry for the late response the version is 0.15.5+1.19

This crash has already been fixed in latest Mythic Metals. Please upgrade from 1.19 to 1.19.2, as I no longer support it.


Add commas to display when creating search queries

It would greatly increase the readability. I can't be the only one who has to count the zeros to make sure it's what I actually want to search for.

I asked ChatGPT and this is what it spit out. I'm not a programmer, so please don't blame me if it's garbage. 🤐
`Step 1: Create a new component for the inut with commas:
// components/NumberInputWithCommas.js
import React, { useState } from 'react';
const NumberInputWithCommas = () => {
const [formattedValue, setFormattedValue] = useState('');
const handleInputChange = (event) => {
const rawValue = event.target.value;
const formatted = formatNumberWithCommas(rawValue);
setFormattedValue(formatted);
};
const formatNumberWithCommas = (value) => {
return value.replace(/\B(?=(\d{3})+(?!\d))/g, ',');
};
return (

);
};
export default NumberInputWithCommas;
Step 2: Use the "NumberInputWithCommas" component in your Remix route
// routes/someRoute.js
import React from 'react';
import NumberInputWithCommas from '../components/NumberInputWithCommas';
const SomeRoute = () => {
return (

Example Using Number Input with Commas

);
};
export default SomeRoute;`

Oh, I got it. Yeah, I can see how it would lead to weird stuff - I think the best approach would probably be as you said, to add the commas after defocus.
The main problem would really just be with default values, right? If I'm entering a number I (generally) know how many zeroes I've entered so it's less of an issue then.
I would suggest a slider, but sliders are even worse than counting zeroes on every website I've ever had to use them on (Looking at you, PC Part Picker and New Egg....)
Although, now that I went to newegg just to make sure that their slider was as bad as I remember (it is) - they seem to have the "enter comma without defocus" down without any weirdness.
https://www.newegg.com/ClearanceStore/EventSaleStore/ID-697?cm_sp=Head_Navigation-_-Under_Search_Bar-_-Clearance&icid=755812


Subsequent domains handlers use updates from prior handlers

This commit prevents a bug introduced in the Flow rewrite where we
assigned the current working state when dispatching domain handlers
for the same key. Subsequent domain handlers would not receive state
updates from previous handlers, causing prior work to be "undone".

Codecov Report

Merging #369 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #369   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          26     26
  Lines         865    865
=====================================
  Hits          865    865

Impacted Files
Coverage Δ

src/domain-engine.js
100% <100%> (ø)
:arrow_up:

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 1c6bf7a...5fd89ab. Read the comment docs.

👍


Optimise performance of components

Tried lazy loading expensive routes that were taking more time to load ( found out from react profiler )
Tried to reduce re-renders for the /experience components by adding useCallback.
Formated the code a bit.
.
.
.
Will try code splitting for front page component to see if it helps in performance optimization.

This works great so far!

Code splitting would help to some extent. You can definitely try that

@nikkuv, any updates on code splitting?

@AryanNanda17 hey I tried code splitting but it was breaking things...I wasn't able to find out how it is happening so not doing that. Sorry.

@AryanNanda17 hey I tried code splitting but it was breaking things...I wasn't able to find out how it is happening so not doing that. Sorry.

No problem. We can address that later. We will review and merge this pr.

The code is written really well. But the animations on the page are really heavy which caused only a slight optimization in performance than the previous. We can rather move forward to merging this for now and explore more possible approaches to optimize this and make its performance better

Thanks for your contribution @nikkuv !

Maybe we can try code splitting in the future.


Add support for manual indexing

Allow the root api file generation to be skipped.
Allow .rst.include behavior to be modified.
Release 0.3.6.

Closes #176.  @IceflowRE can you take a look and see if this works for you?  I have not tested this yet.  Outside feedback welcome.

just an option that wont add the .include suffix

I understand it's a little more inconvenient but see the newly added options in configs.py.  Docs on manual indexing in configs.rst hopefully gives a little more context, my understanding is you just wanted specific hierarchies but not the unabridged api or orphans (if relevant).
The other thing that came to mind was like hierarchyFileExtension = ".rst.include" and then you would only need to set one, but then there might be somebody who only wants say the page or the class hierarchy but not the others (?).

and do not generate the rootFileName file?

That one should work by setting rootFileName to "EXCLUDE" now.

Open to suggestions, I'm happy to expose more of the internals for projects to hack around -- exhale is one giant hack.

In my tests the EXCLUDE value did not work.

sphinx.errors.ConfigError: The given rootFileName ("EXCLUDE") did not end with '.rst'; Exhale is reStructuredText only.
The other things works as expected! Thank you.

In my tests the EXCLUDE value did not work.

Sorry about that... I knew I needed to add actual tests but hey for an untested stab the implementation was pretty close ^^  That should work as expected.

The other things works as expected! Thank you.

Thanks for testing, sorry for the delay on finalizing.  The testing framework has ... issues.  This stuff is released on 0.3.6 now.

Thanks for the fast response! :D hey for Open Source this is fast!


[Website update] Download page evaluation

Is your feature request related to a problem? Please describe.
Determine if the current download page is adequate.
Community ask: If you have input, please let us know. Examples of download pages you find useful?
Describe the solution you'd like
Evaluate potential enhancement to artifacts page - version selection to allow for simple list of files based on feedback @dtaivpp  has received from developers

Related issue: https://github.com/opensearch-project/project-website/issues/251

related issue: https://github.com/opensearch-project/project-website/issues/1151


Is there a way to import it directly to a page as a script?

I have this old project that is not npm-based. I want to import the .js file as script and start using it. Is this possible?

No, because Ollama uses Typescript. However, you could download the source and compile it to Javascript then use that.


Reload the page when using the watch option with the preview option

When using the --watch option with the --preview option we should instruct Puppeteer to reload the page when something changed to provide a live preview of the HTML file.

Thanks @Mogztter for your fine work on this project and Happy New Year :champagne:
Regarding your comment in https://github.com/Mogztter/asciidoctor-pdf.js/pull/149#issuecomment-569349378 I think it would be OK to only support preview for a single file not multiple files (at least for v1 and perhaps at all).


Create CONTRIBUTING.md

fixes: #77

Summary by CodeRabbit

New Features

Introduced a CONTRIBUTING.md file with guidelines for contributing to the project, including a Code of Conduct, contribution process, and issue reporting.

Documentation

Provided detailed instructions for setting up a local development environment, committing changes, and submitting pull requests.

This issues (#77) has already been claimed and this PR does not address everything listed in the issue.


RBL doesn't prompt for ipykernel setup anymore

Issue Type: Bug

Connect to a Python intepreter which doesn't support Run By Line (old version of ipykernel)
Run RBL
VS Code stable: it prompts "ipykernel setup required for this feature"
Insiders: nothing happens

Extension version: 2022.5.1001551026
VS Code version: Code - Insiders 1.68.0-insider (15253f1528573fc8f84e956b21af4bad57f38c07, 2022-06-02T05:16:07.238Z)
OS version: Windows_NT x64 10.0.22621
Restricted Mode: No

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 x 3600)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_renderer: enabled_onvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.93GB (15.63GB free)

Process Argv
--enable-proposed-api joyceerhl.vscode-pyolite --enable-proposed-api rebornix.better-jupyter-errors --enable-proposed-api donjayamanne.kusto --crash-reporter-id e73ca734-e67c-473d-8c47-80c5407fc859

Screen Reader
no

VM
0%

Works for me, though the message is very confusing

@rebornix please could you share your logs


"Site"/"Site Collections" naming consistency

Hi there!
The wiki page mentions

sites (previously called "site collections")

and the M365DSC page here calls them Site Collections
It would be nice to have the naming conventions consistent for SharePoint Online

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

ID: 7461c2ef-3439-2c86-4dde-8992b62bf9a7
Version Independent ID: faa4e3aa-8ec4-f1f1-d4bd-4058999545f3
Content: About the SharePoint admin role in Microsoft 365 - SharePoint Online
Content Source: SharePoint/SharePointOnline/sharepoint-admin-role.md
Service: sharepoint-online
GitHub Login: @kaarins
Microsoft Alias: kaarins

@4x0v7  thank you for engaging with the community here for the docs.
I know the product teams are always looking for user feedback and how to make SharePoint better. They keep a close tab on user feedback and it would be awesome if you could add your voice in User Voice https://sharepoint.uservoice.com/.


Update install.sh

Your PR is meaningless.
You just changed some visual lines.
And it does not really support the new versions of pterodactyl.


Import $file.folder.build fails when folder name contains hyphen

Description
When import build.sc from a folder whose name contains a hyphen, mill would fail to find it from its internal map
Reproduced version
0.10.1 and 0.10.2, while 0.10.0 is not affected
MWE
.
├── a-b
│   └── build.sc
└── build.sc

Where in the toplevel build.sc is
import $file.`a-b`.build

def A = T {
  println("a")
}

and in the a-b/build.sc is
def B = T {
  println("b")
}

Run mill -i -j 0 __.compile would result in
Exception in thread "main" java.lang.reflect.InvocationTargetException
        ...
Caused by: java.util.NoSuchElementException: key not found: ammonite.$file.a-b.build
        ...

Note that changing the folder name a-b to a solves this issue.
Additional notes
Personally I think this is related to #1663, but it is just a wild guess.

This happened to me too

This happened to me too

This happened to me too

Downgrading mill's version to 0.9.8 resolved my issue

@ZenithalHourlyRate Thank you for opening this issue! It was indeed caused by #1663.
@cisen I think downgrading to 0.10.0 should be enough.
I have opened #1789 which should fix this.

Fixed in version 0.10.2-2-8c163c

@sequencer Did you test it? Before releasing a version it would be nice to know if it fixes your use case.

@lolgab testing.

@lolgab opps...
still not work on my side.

I'm using https://github.com/sequencer/playground, which is quite huge, I'm trying to give a minimal reproducible bug later.

I'm using https://github.com/sequencer/playground, which is quite huge, I'll give a minimal reproducible bug later.

0.10.2-2-8c163c works for me on this repo.

@sequencer It would be nice if you could report back, whether it issue is fixed for you in current main branch or not.

Sorry for the late reply!
It does work for me!
Thanks for @lolgab great work!

Nice, I'm closing this again 👍

hi @lefou is possible to release a new version(0.10.3) to get rid of this bug? our flow strictly depends on the published version, which has been blocked for 20+ days.

@sequencer Sure. Sorry for the delay, but we found and fixes some other issues as well, so we waited. I'd like to merge some other PRs today and then I can cut the next release.

Thanks! I believe I should improve our flow to support the pinning version as well. Sorry for this pushing.

Technically speaking, each snapshot release we are publishing, is a real and correct release. It is publishing to Sonatype Central release repository and the version is based on the last tag plus the count of commits and the hash of the commit. I'm not aware of any technical difference which could prohibit the consumption of e.g. Mill 0.10.2-35-3ef3c1 unless you deploy some guard that rejects hyphens in the version number.

Yes. I understand this SNAPSHOT version can provide up to date version of mill.
the flow I have been depending on is we use the mill packaging from a distro, while distro only publish the “stable” version, so that’s the tricky part…


Visual Studio nvcc crash workaround

We observed nvcc crashing on CUB RadixSort compiling in Visual Studio with cuda compilers other than version 8.0.44. This fix switches the sorting from CUB to Thrust when mxnet is being compiled in Windows with any other CUDA version than 8.0.44.

Can one of the admins verify this patch?


chore(tox): lower the barrier to contribution

Closes #1983
I was forced to add a handful of coverage # pragmas for CPython 3.10 due the bugs in coveragepy or (likely) the interpreter itself.
I added a new CI action that is triggered for master merges, but a successful prototype run is demonstrated here: https://github.com/falconry/falcon/runs/5260441852?check_suite_focus=true. This action simply runs tox with the default envlist, which has now been modernized to be fully sufficient on CPython 3.8 & 3.10 in lieu of the old tools/mintest.sh.

Still in Draft as I'm trying to figure out what to do wrt https://github.com/nedbat/coveragepy/issues/1324. There are quite many missed branches, and I don't want to plop that many pragmas on those lines yet...

Hm, maybe I should add a newsfragment for this and call it an improvement?

@CaselIT it would be awesome if you could check out the branch and give it a spin on Windows CPython 3.8 or 3.10 (just run tox).

@CaselIT it would be awesome if you could check out the branch and give it a spin on Windows CPython 3.8 or 3.10 (just run tox).

trying on 3.9 (that's what in the env at the moment. will try the other

3.9 has too many bugs so you won't get full coverage, otherwise nice to check (described in CONTRIBUTING).

it's fine also on 3.10, but the coverage still fails with
falcon\routing\static.py                  110      1     48      1    99%   184

:thinking: It passes in Actions on 3.10.2... which micro version are you on with Conda?

on 3.10, yes, that's the only one.
I can take a look

@CaselIT I have hopefully fixed that OS-specific discrepancy, could you please give it a spin again on 3.10 (or 3.8) on Windows?

coverage is not fine at falcon\routing\static.py                  111      0     48      0   100%


Should interaction defaults to None in dependence_plot?

interaction_index="auto" has been quite useful for me, but it was very confusing in the beginning when I saw a different feature over-plotted, and can't figure out why that particular feature was there and not the others. I thought I had some misalignment in my data somewhere that was causing different feature to be plotted than the one I specifically asked for.
Defaulting to None will also speed up the initial plotting.

Thanks for the suggestion! I'll think about it. What you describe makes sense.


Sphinx 6.0.0: Theme Error: Reason: UndefinedError("'logo' is undefined")

After upgrade to sphinx==6.0.0, a ThemeError is raised. This error disapear when using another theme, so I think it's related to pydata_sphinx_theme.
looking for now-outdated files... none found
pickling environment... done
checking consistency... done
preparing documents... done
writing output... [  0%] api/astropop.astrometry.AstrometricSolution
Theme error:
An error happened in rendering the page api/astropop.astrometry.AstrometricSolution.
Reason: UndefinedError("'logo' is undefined")
make: *** [Makefile:45: html] Error 2

I added a section logo in html_theme_options and it worked:
html_theme_options = {
   "logo": {
      "image_light": "logo-light.png",
      "image_dark": "logo-dark.png",
   }
}

The problem is coming from here:
https://github.com/pydata/pydata-sphinx-theme/blob/13d46921f2a5336fc58dad2cbff6a6d312dc394f/src/pydata_sphinx_theme/theme/pydata_sphinx_theme/components/navbar-logo.html#L10
I need to investigate but it seems the default "logo" (provided by Sphinx itself) is not reaching the template anymore.
As a workaround and as @sdpython suggested, you can rely on the html_theme_options logo to overwrite Sphinx definition.

Apparently, logo and favicon were removed in Sphinx 6, see https://github.com/sphinx-doc/sphinx/issues/11062 and https://github.com/sphinx-doc/sphinx/pull/11063.

I'm seeing this same error when writing the first page:
| pickling environment... done
| checking consistency... done
| preparing documents... done
| writing output... [ 25%] changes
| Theme error:
| An error happened in rendering the page changes.
| Reason: UndefinedError("'logo' is undefined")

installed versions
(sphinx) user@localhost:~/.../project $ micromamba list sph
List of packages in environment: "~/micromamba/envs/sphinx"

  Name                           Version      Build         Channel
─────────────────────────────────────────────────────────────────────────
  pydata-sphinx-theme            0.12.0       pyhd8ed1ab_0  conda-forge
  sphinx                         5.3.0        pyhd8ed1ab_0  conda-forge
  sphinx-basic-ng                1.0.0b1      pyhd8ed1ab_0  conda-forge
  sphinx-inline-tabs             2022.1.2b11  pyhd8ed1ab_0  conda-forge
  sphinxcontrib-applehelp        1.0.2        py_0          conda-forge
  sphinxcontrib-devhelp          1.0.2        py_0          conda-forge
  sphinxcontrib-htmlhelp         2.0.0        pyhd8ed1ab_0  conda-forge
  sphinxcontrib-jsmath           1.0.1        py_0          conda-forge
  sphinxcontrib-qthelp           1.0.3        py_0          conda-forge
  sphinxcontrib-serializinghtml  1.1.5        pyhd8ed1ab_2  conda-forge

No text logo anywhere in the pysumreg repository, BTW.

The error was encountered in a local CI build of the publishing workflow using act.  The local CI installs Downloading sphinx-6.0.0-py3-none-any.whl (3.0 MB).  The error is reported on the first file to be output.
Adding an installation restriction on the Sphinx version allows the build to complete:
      - name: Install Sphinx build requirements
        run: |
          pip install setuptools-scm "sphinx<6" pydata-sphinx-theme
          echo "--------------- diagnostic pip list ---------------"
          pip list

As long as 0.13 is not released, the fix we provide won't be available. Please pin the version of Sphinx to sphinx<6 in your documentation environment.

Intense blocker here. Pinning sphinx<6 is non-ideal; inevitably, I forget I've even done that and then something explodes five years from now. Panic from my future self can already be heard.
Would publishing a rapid 0.12.1 patch release just addressing this specific issue be feasible instead, perhaps? Probably not – but a criminally forgetful dev-bro can beg on GitHub. :pleading_face:

solved in #1132 and included in 0.13rc2. 0.13 will be released soon.


🌐 Update Chinese translations with new source files

The docs in language zh is out of date.
So the high line is wrong on the python code, that makes the reader confuse.
I copy the py-code from language en to zh.

📝 Docs preview for commit 4efcc6911151e5ac07f048e304023c4197925b88 at: https://64977ec294f5d8307aebe55d--fastapi.netlify.app

📝 Docs preview for commit 66e8d3d3488ea2e7eed20c5984fca4809d39fb2c at: https://64a78a5bb0058521e7475fd5--fastapi.netlify.app

Is there anybody to approve this PR? Do I need to follow any procedures?
Two native speaker have reviewed it and I have changed the code based on the review.

Awesome, thank you @mahone3297! 🚀
And thanks for the reviews @mkdir700, @Slijeff, @wdh99 🙇


⚠ Turnos 24x7 has degraded performance

In 3d42e1f, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 855 ms

Resolved: Turnos 24x7 performance has improved in 6d6f54c.


Could you provide the arguments or checkpoints?

I trained the model using the same default arguments as provided in 0-pretraining-dp.py. However, the learning process did not converge, and even after changing the masking ratio to 65% and 85%, there was no significant difference in the average point loss. Additionally, the results differ from the Accuracy provided in Table 5. Could you kindly provide the arguments you used or the pre-trained checkpoint?

Apologies for the delay. We've provided two new logs: “https://drive.google.com/drive/folders/1p0U4sF11lPrJvI8ZSwrmdBgJAx5P0rF4?hl=zh-cn.”
In our subsequent research, we observed that this method exhibits fluctuations, possibly due to noise and the process of restoring the original point coordinates. Additionally, there is a notable gap between restoring these coordinates and learning high-level semantics. As a result, the 4D self-supervised task requires further optimization, and additional in-depth research is necessary.


Return error code when volume inspect fails with a template.

Following docker inspect conventions:

Keep partial info in a buffer to not print incomplete template outputs.
Break execution when template parsing or decoding fail.

Fixes #18328
Signed-off-by: David Calavera<EMAIL_ADDRESS>

@cpuguy83 you might want to take a look at this patch :wink:

LGTM

Couple of nits in the tests, otherwise LGTM

@cpuguy83 I added the output to both checkers, I think it's more useful than any other comment.

LGTM

Self :pray: :tada:


add support for an external label

Add a prop: external-label={id} that will use the id external-labal for aria and input for
willing to implement this.

would also have to be implemented in searchbar

also export input id


Backport #461 for v0.5.x: Push deleted files

This backports #461.
Conflicting files:

commands/command_push.go
lfs/upload_queue.go

Getting conflicts because I should've merged #449 first.


duplicate id: editor-dialog-title

When editing something... There is a duplicate id: "editor-dialog-title"
REACT_APP_SKIP_A11Y=false make run-frontend
http://localhost:3000/c/minikube/storage/classes/standard

I can reproduce this, working on it.


Fix --max_samples error in streaming mode

What does this PR do?
Fixes TypeError: object of type 'IterableDataset' has no len()
Before submitting

[x] Did you read the contributor guideline?

We should have checked this in https://github.com/hiyouga/LLaMA-Factory/blob/942362d0087345e468e0ae541dcca9b684d74d1a/src/llmtuner/hparams/data_args.py#L99-L100

👍


Signify that mb.js is now maintained.

(By me)

Could you move it for the list to be alphabetically sorted?


feat: Add support for GitHub API commit

Fix #1914
This pull request adds support for GitHub API commit. It allows Github SCM to commit a file in a GitHub repository using the GitHub API instead of using native Git.
The GitHub commit API is useful when a user is using the automated token from Github Actions as it creates a signed commit automatically, removing the requirement of using a bot account with a GPG key configured.
For now I've hidden this feature behind the commitUsingApi (not loving the parameter name, happy for suggestions).
In addition I changed the Github pull request action to check if working branch is ahead using the API instead of relying on the native Git handler as I kept running in to issues where Github Actions wasn't recognizing changes done (not exactly sure why, but I think this will 100% ensure that the commit is available in Github).
As can be seen in the below screenshot, the commit is shown as verified with the Github Actions bot user committing the changes.

Test
Build my fork and use the Github SCM with commitUsingApi: true.

@olblak Leaving this in draft for now as I am still doing some testing in our organization, but happy to get any feedback. I'll see if I can get some tests in as well when I get some more time.

Spelling issues can be ignored by adding them to https://github.com/updatecli/updatecli/blob/main/.github/actions/spelling/allow.txt

@olblak Added a pattern to remove spellcheck on lines where it didn't make sense which was a bit easier than having to add exclusions for base64 strings. 😄


Hotmart stopped working

Describe the bug
Simply go on a hotmart video:
https://player.hotmart.com/embed/VIDEO_ID?signature=VIDEO_SIGNATURE
To Reproduce
Steps to reproduce the behavior:
Just install the extension and go on any hotmart video
I found some to try for you:
https://player.hotmart.com/embed/Yq2jK1o5qa
https://player.hotmart.com/embed/nRvJ0kkYRQ
https://player.hotmart.com/embed/Pq9rbvnDLO
They all have the same problem. Just open the video and try to download it. Nothing appears.
Expected behavior
Expect to get the video download button, instead nothing happens, but the red dot in the extension icon triggers, which notices that something is found, but the download doesn't show up.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: Windows 10 latest version
Browser Chrome latest version
Version 118.0.5 (Chrome)
3.3.0 Hls downloader version

Additional context
Before it worked.
I tried to do "Examine popup" and it shows this:

Same here. Nothing appears to download.

Same here. Nothing appears to download.

Did you find other ways to get the video?
I would like to avoid screen recording....
There is another HLS download extension which is able to catch the playlist ,m3u8 file but can't download it.
Even feeding the direct link to meu8 list doesn't work.
Moreover, they removed from Chrome store every reference to CocoCut downloader, which was another good extension.
I don't know how to do it now

Same here. Nothing appears to download.

Found an alternative
https://chrome.google.com/webstore/detail/video-downloader-cococut/gddbgllpilhpnjpkdbopahnpealaklle/related
Cococut downloader, enable record mode and it gets the job done.
Only problem is you have to buffer the whole video, so you have to keep it running for the whole length.
I suppose it's better than not having it at all.

Same problem here. I've been using the Video DownloadHelper extension which is OK, not great - I can download videos from a course but there seems to be a small audio async error in the mp4 file afterwards. Better than nothing.

Same here. Used to download videos I bought from Hotmart, now nothing happens.

Same here! Someon find a way to download the videos?

I found that yt-dlp still works

I found that yt-dlp still works

Please, how do you get the correct URL to use as a parameter to yt-dlp? Could no make it work here.

I found that yt-dlp still works

Please, how do you get the correct URL to use as a parameter to yt-dlp? Could no make it work here.

Grab m3u8 link with any playlist grabber chrome/firefox extension.
Command I used is:
yt-dlp -o "video_name.mp4" --add-headers Referer:https://player.hotmart.com/ https://vod-akm.play.hotmart.com/video/some_video_id/hls/1080/playlist-video_playlist_id.m3u8
The whole playlist url might be longer if you're behind an authenticated website (like a couse site like teachable or stuff like that)

Same here. Nothing appears to download.

Found an alternative https://chrome.google.com/webstore/detail/video-downloader-cococut/gddbgllpilhpnjpkdbopahnpealaklle/related
Cococut downloader, enable record mode and it gets the job done. Only problem is you have to buffer the whole video, so you have to keep it running for the whole length.
I suppose it's better than not having it at all.

They put a time limiter on it, does anyone have the previous version?
Has anyone found a way to download the Hotmart videos?


artifact version fixed from README file

The version supplied by the example is not correct.
It may confuse some people because it just does not work when you copy and paste.

Thanks for catching that.