Feature: Added media file resolution to the details pane

Resolved / Related Issues
Items resolved / related issues by this PR.

Closes #5075

Partially closes #5075. There is a request to allow users to customise the information in the details pane which hasn't been implemented here.
Validation
How did you test these changes?

[x] Built and ran the app
[ ] Tested the changes for accessibility

Screenshots (optional)

LGTM
We still need to work on a UI for editing data in the preview pane, let me know if you're interested.

@yaira2 I'm interested in working on this. Do you have any thoughts/concepts for how it will look?

/azp run

@puppetsw I think that if a user makes any changes, there should be a cancel and save button at the bottom of the details pane.


task1

[x] Additional markup is supported, including @mentions, #references, links, emphasis, and HTML tags.
[ ] List syntax is required.

You can nest lists below, too!

[x] This item is completed.
[ ] This item is not complete.

do i need to comment?


Request failed "406 Not Acceptable""

when  i  run "yarn" to install dependent package, get follows error:
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
error An unexpected error occurred: "https://saucelabs.com/downloads/sc-4.6.4-linux.tar.gz: Request failed \"406 Not Acceptable\"".
info If you think this is a bug, please open a bug report with the information provided in "/home/software/angular-cli/yarn-error.log".

This seems like a problem with your node/npm and not with Angular CLI.
Please have a look at the fixing npm permissions page, common errors page, npm issue tracker, or open a new issue in that issue tracker if the problem you are experiencing isn't known.

@alan-agius4  https://saucelabs.com/downloads/sc-4.6.4-linux.tar.gz the file not exists, you can double verify it

The file does exist.
On Thu, 25 Nov 2021 at 06:47, wzy @.***> wrote:

@alan-agius4 https://github.com/alan-agius4
https://saucelabs.com/downloads/sc-4.6.4-linux.tar.gz the file not
exists, you can double verify it
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/angular/angular-cli/issues/22228#issuecomment-978856064,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEF74WTECLFO4DBTHAHDSJLUNXEWVANCNFSM5IXVKAGQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

but i can not download it and view it through the url


specify columns to load with relations

Is it possible?
new User({id: 2}).fetch({
  withRelated: ['account'],
  columns: ['id', 'name', 'accountId']
})

I want to load ['id', 'name', 'accountId'] columns from users table and load ['balance', 'total'] from accounts table.

+1 This should be documented. Very helpful.

It is documented
http://bookshelfjs.org/#Model-relation-types
The docs need to convey a ton of info without creating overwhelm. I'll be taking a look at how to redo them this year.

@bendrucker Yeah, I've read this page a couple of times, but I couldn't find a section that talks about limiting columns that are returned withRelated. Please feel free to point out the exact section where this has been documented. Somehow, I am not seeing it and search for qb.column returns nothing.

Search for function(qb) and there's an example of using that syntax to get a hold of the query builder (i.e. Knex).

@bendrucker I see. For a newbie like me, showing the example with columns would be really helpful. That's when you get a chance to update the docs. Thank you.

I hear you. For now we're going to refrain from adding new examples where there are already several. The one page doc format is particularly strained with things like relations and readability is an issue.
I'll keep a tally here which I'd love for you to contribute to as you get started:
https://github.com/tgriesser/bookshelf/wiki/Examples-Todo

@bendrucker I'd love to! My understanding I can just edit and save that Wiki page?

Yes

Howdy!  I can't seem to get the above code sample to work.  Returning entire records through my withRelated list works fine, but when I try to specify the actual columns to return, I don't get any error messages or anything - it just returns an empty JSON object.
Here's a code sample:
      if (req.params.submission === 'all' && req.params.file === 'all') {
        new db.SubmissionsFiles()
          .fetchAll({
            withRelated: [{
              submission: function (qb) {
                qb.column('name', 'title', 'likes', 'dislikes', 'votes');
              },
              submissionThumbnail: function (qb) {
                qb.column('directory', 'name');
              }
            }],
            columns: ['directory', 'original_name', 'name', 'caption']
          })
          .then(function (file) {
            console.log(file.toJSON());
            return res.status(200).send(file);
          })
          .catch(function (error) {
            return res.status(404).send("Could not get file!");
          })
        ;

Which returns objects like this:
 [ { directory: 'uploads/697aa9b0ad5b880a064f9f196b00a8c3.gif',
    original_name: 'VORmrSS.gif',
    name: '697aa9b0ad5b880a064f9f196b00a8c3.gif',
    caption: 'This is a caption.',
    submissionThumbnail: {},
    submission: {} },
  { directory: 'uploads/39e086ed32de8d56fd0aaca6cc3b25a8.jpg',
    original_name: 'VcglMZK.jpg',
    name: '39e086ed32de8d56fd0aaca6cc3b25a8.jpg',
    caption: 'This is a caption.',
    submissionThumbnail: {},
    submission: {} },
  { directory: 'uploads/c9ed5f2b91da79c3746d8d7b0785570f.jpg',
    original_name: 'Vwzl3al.jpg',
    name: 'c9ed5f2b91da79c3746d8d7b0785570f.jpg',
    caption: 'This is a caption.',
    submissionThumbnail: {},
    submission: {} } ]

If it helps at all, here are my models that are being called in my fetchAll() function:
Submissions = bookshelf.Model.extend({
  tableName: 'submissions',
  idAttribute: 'submissions_id',
  user: function () {
    return this.belongsTo(Users, 'users_id');
  },
  submissionFile: function () {
    return this.hasMany(SubmissionsFiles, 'submissions_files_id');
  },
  submissionThumbnail: function () {
    return this.hasMany(SubmissionsThumbnails, 'submissions_thumbnails_id');
  },
});

SubmissionsFiles = bookshelf.Model.extend({
  tableName: 'submissions_files',
  idAttribute: 'submissions_files_id',
  user: function () {
    return this.belongsTo(Users, 'users_id');
  },
  submission: function () {
    return this.belongsTo(Submissions, 'submissions_id');
  },
  submissionThumbnail: function () {
    return this.hasOne(SubmissionsThumbnails, 'submissions_thumbnails_id');
  },
});

SubmissionsThumbnails = bookshelf.Model.extend({
  tableName: 'submissions_thumbnails',
  idAttribute: 'submissions_thumbnails_id',
  user: function () {
    return this.belongsTo(Users, 'users_id');
  },
  submission: function () {
    return this.belongsTo(Submissions, 'submissions_id');
  },
  submissionFile: function () {
    return this.belongsTo(SubmissionsFiles, 'submissions_files_id');
  },
});

Any ideas on what I'm doing wrong here?

Can you also post the queries that are being generated?

@ricardograca Sure thing.  The SQL generated for my first withRelated function is:
'select "name", "title", "likes", "dislikes", "votes" from "submissions"'

And the SQL generated for the second function is:
'select "directory", "name" from "submissions_thumbnails"'

I'm 100% positive that these columns exist and that there is data in them.  When I specify only the table name in the withRelated list, it works properly.

Hi @asonnenschein, thanks for the report. I'd like there to be new issue for this as the one you're responding to is closed. Would you mind doing the honours?
I have a suspicion of what the problem may be here. After the related models are returned, bookshelf groups them by their relevant join keys and then reassociated to each 'parent' model in the collection. When overriding the columns, the required foreign keys are omitted, and therefore the associations cannot be rebuilt. A workaround should be as simple as adding the relevant keys to your calls to columns.
Could you try the following to confirm that this is the problem?
if (req.params.submission === 'all' && req.params.file === 'all') {
  new db.SubmissionsFiles()
    .fetchAll({
      withRelated: [{
        submission: function (qb) {
          // Change here
          qb.column('submissions_id', 'name', 'title', 'likes', 'dislikes', 'votes');
        },
        submissionThumbnail: function (qb) {
          // and here
          qb.column('submissions_thumbnails_id', 'directory', 'name');
        }
      }],
      columns: ['directory', 'original_name', 'name', 'caption']
    })
    .then(function (file) {
      console.log(file.toJSON());
      return res.status(200).send(file);
    })
    .catch(function (error) {
      return res.status(404).send("Could not get file!");
    })
  ;

If this works I'd still appreciate a new issue to be opened. I think we can probably build in a workaround to have the keys in the join but omit them from the returned model.

new User({id: 2}).fetch({
  withRelated: [{'account': function(qb) {
    qb.column('id', 'balance', 'total');
  }}],
  columns: ['id', 'name', 'accountId']
})

The account is an empty array. Any reason?

Is this fixed? I am still facing the same issue with v0.9.1

I have a similar query and I can confirm that specifying the join keys in the withRelated callbacks does work. We do still need some clean method to omit them from the final result though.

It is possible to accomplish this using .pick() from underscore:
Model.related('relatedModel').pick(['columns','you','would','like']);

Hi there I am also facing the same issue when trying to specify withRelated columns for a hasMany relationship. The solution provided works for a belongsTo relationship but hasMany returns an empty array.

Hi there, I'm also facing the exact same issue as @howardmann have, I can't use the select clause on an hasMany relationships, any updates here?

Same issue
.fetch({
  withRelated: [{'devices': (qb) => {
    // qb.column('DeviceID')
  }}],
  columns: ['ProductID']
})
//select [Device].* from [Device] where [Device].[ProductID] in (?)

Then Product.related('devices') returns all columns of Device.
.fetch({
  withRelated: [{'devices': (qb) => {
    qb.column('DeviceID')
  }}],
  columns: ['ProductID']
})
//select [DeviceID] from [Device] where [Device].[ProductID] in (?)

Then Product.related('devices') returns nothing out of Device. MSSQL.
select [DeviceID] from [Device] where [Device].[ProductID] in (select 1) works properly when I run it directly on the SQL server.

@gsdnano  i changed qb.column to qb.columns and that works.
bookshelf version 0.10.4
.fetch({
   withRelated: [
     {'devices': qb => qb.column('id', 'device_name')}
   ],
   columns: ['device_id']
})

that works under this schema definination
device:
id primary key

relations:
device_id: // for device primary key
relations = bookshelf.Model.extend({
    device () {
        return this.belongsTo(device, 'device_id', 'id')
    }
})

{'account': function(qb) {
    qb.column('id', 'balance', 'total');
  }}

can i ask, what the mean is this ?
 columns: ['id', 'name', 'accountId']


Question/feature request: drop-in replace pydantic dataclass

Thanks alot for an amazing package!! Has most of the stuff I've been looking around for in (many) other packages.
Is it possible to replace python built-in dataclass with pydantic dataclass to allow for run-time data validation with pyrallis?
It would be a great feature improvement. I havent found the argparse+pydantic combination anywhere else.

Interesting idea! I'm actually not sure but we will give it a try and see whether that can be easily achieved

That's amazing @eladrich!!!
Here is an example of what I mean by triggering run-time validation

I also look forward to this tool supporting pydance dataclass.


CORS on static files

One of our applications requires CORS headers for static files. I'm currently using the default setup to add all of our APIs as being CORS enabled. The static route is added as add_static.
Am I missing something?

My bad. A simple cors.add(static) fixed this.


Add For Science to conflicts list for DMagic Orbital Science

For Science doesn't properly interact with Orbital Science experiments. This can lead to simply thinking the experiments can't be run, to preventing experiments from being transmitted while using Remote Tech.

Looks good to me. Merging with thanks!


Added loader 34

Oscillation CSS loader

Your contribution is greatly appreciated @ArnavGuptaaa
Don't forget to star the repo and follow me on Github.
Thanks!


Can't create admin user

Version information

Laravel: v8.12
Voyager: v1.4
PHP: 7.4.3
Database:  MySQL 8.0.22

Description

I have installed voyager successfully in a new project however, am unable to create admin user account.  The below error is displayed when I try to access the admin panel.
BadMethodCallException
Call to undefined method App\Models\User::hasPermission()
Steps To Reproduce
Steps to reproduce the behavior:

composer require tcg/voyager
php artisan voyager:admin<EMAIL_ADDRESS>--create

Screenshots

Have you ran php artisan voyager:install?

Hi all, I do have the exact same issue. (First time I’m using voyager)
I did run php artisan voyager:install --with-dummy
When trying to create new admin account:
BadMethodCallException
Call to undefined method App\Models\User::setRole()

When trying to access the login panel :
BadMethodCallException
Call to undefined method App\Models\User::hasPermission()

My info :
Laravel 8.15
Voyager: v1.4
PHP: 7.4.12

Have you ran php artisan voyager:install?

Hell @ryancatlin , Yes I have followed the installation steps. I have tried in a new project  using laravel  breeze for auth scaffolding and voyager works fine.
However, when I use laravel Jetstream this error occurs.

Call to undefined method App\Models\User::hasPermission()

Means Voyager has not been properly installed.
If you are installing Voyager 1.4.2 on Laravel 8, Voyager is not going to find User model and you should see this message at the end of install process:

Unable to locate "User.php" in app or app/Models.  Did you move this file?
You will need to update this manually.  Change "extends Authenticatable" to "extends \TCG\Voyager\Models\User" in your User model

To solve the problem you need to follow instructions or install dev branch, to be noted that Laravel 8 is still not fully supported and there are problems with seeders.
If that does not help we can reopen this issue.


Run the ansible playbook  for fabric in gke return error form storage class.

Describe the bug
Hello, I try to deploy the principal example from BAF in fabric version,  when I deploy the playbook I get this error regarding the storage class:
TASK [create/storageclass : Create Storage Class value file for orderers] *******************************
fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'dict object' has no attribute 'gcp-orderer'\n\nThe error appears to be in '/home/brando/blockchain-automation-framework/platforms/hyperledger-fabric/configuration/roles/create/storageclass/tasks/main.yaml': line 29, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n# This task creates the value file for creating the storage class for Orderer\n- name: Create Storage Class value file for orderers\n  ^ here\n"}
The cluster is created in gcp, that is, it is a gke cluster.
Please could you give me some idea why this error?
To Reproduce
Steps to reproduce the behavior:

Fork the baf repository and clone.
Install prerequisites of baf
Create file name build and  create fabric-network.yaml following the documentation and specifying that the cluster provider is gcp.
Run the ansible principal command
See error

Expected behavior
the fabric network running in gke cluster.
Environment (please complete the following information):

ubuntu 20.04 LTS
fabric 2.2.0

Currently we have storage class templates for EKS, AKS and minikube. For GKE, we need to have the storage classes in place, so that the BAF deployment can work for the Google Managed Kubernetes service.
Here's an operational guide, to implement the same
https://blockchain-automation-framework.readthedocs.io/en/latest/operations/adding_new_storageclass.html

@jagpreetsinghsasan  thanks my friend for the help

I would like to fix this issue by adding a gcp-storageclass.tpl template file inside the hyperledger-besu platform directory having path blockchain-automation-framework/platforms/hyperledger-besu/configuration/roles/create/k8_component/templates along with any entry in project/blockchain-automation-framework/platforms/hyperledger-besu/configuration/roles/create/k8_component/vars/main.yaml


Changes: Namespaces, Code formats, docblocks and more

I have tested this master, and it works. So, don't worry, you can pull the request. I enabled namespacing, improved the readme, added docblocks and also better code format.
There are still many things your repo lacks (autoloading, abstraction, unit testing  ... ) If I find the right time, I will make another PR.

Thank you!
That is exactly the kind of help I was looking for, I'll try to further read into these topics so I can apply them here.
If you have any resources I should be looking at I would be grateful, Thanks.


Error when test apk has kotlin interfaces with @Test methods implementations

When flank generated the shards, firebase gave a 400 saying that the test is invalid.
This gist has the complete log.
The apks (with I already sent to @renas, if anyone want to test) run successfully on my machine.
It was also a bit hard to understand what logs are from what shard. Maybe putting a common prefix to logs about what shard they're refering to could help debugging.
E.g:
https://gist.github.com/thalescm/7e64bc80fc2a32dcb8eef50fc0a96aac#file-flank-shard-error-L51-L56
all lines could start with something like SHARD X: <real log>

@thalescm is this still happening on master? I see a fix has landed.

https://github.com/TestArmada/flank/commit/b41a9d97267a1ea55d02bbce29c3caaae5b33983

Thanks for reporting this. Seems like the extraction of the test name is incorrect. We use this library for that:
https://github.com/linkedin/dex-test-parser
How should the below test look like in its correct form?
class com.nu.aab_transaction_detail.test_interface.InstallmentsAmountTest$DefaultImpls#testTransactionLoads_withInstallments_correctChargesSubtitleIsDisplayed

@bootstraponline it was with the master version of 1 hour before I posted the issue.

@renas I think I know what the problem is. InstallmentsAmountTest is a [kotlin interface](https://kotlinlang.org/docs/reference/interfaces.html].
There are some cases on the app where this behavior is present, so we extracted the test and it get tested on many different places. This way we don't have to rewrite the same test over and over.
Probably the lib does not identify that this is an interface and chooses this method to run, when it can't

Yeah seems like it's not correctly identifying kotlin interfaces. If you can please submit this issue to the dex-test-parser project that would be great.

Issue posted there I think it makes sense to close this issue once there's a fix there and is updated here as well. WDYT?

Is this still an issue now that upstream is fixed?

Will make a new release this week with the updated library.
On Sun, Aug 6, 2017 at 3:31 PM, bootstraponline<EMAIL_ADDRESS>wrote:

Is this still an issue now that upstream is fixed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/TestArmada/flank/issues/35#issuecomment-320537209,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAKGpe9Q3Fs0eMgod0FkoUDaLFTbomvWks5sVj7XgaJpZM4N4iad
.

Hi folks,
I'm facing this problem...
I get: Http error while creating test matrix: ResponseError 400:

Don't use @test on an interface.


changed to log in as case manager but cypress not pulling through the…

… new login

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@985f73d). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #17   +/-   ##
=======================================
  Coverage        ?   39.43%
=======================================
  Files           ?        8
  Lines           ?      213
  Branches        ?        0
=======================================
  Hits            ?       84
  Misses          ?      123
  Partials        ?        6

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 985f73d...805dc01. Read the comment docs.


Adds Containers dictionary by red hat

@FedericoPonzi Thanks for your request! Btw, please read the Contribution Guide first!


Typo in README

There's a typo on the README.
Starting Execbeat as Service
Where supported Execbeat can be started also using the respetive service scripts, e.g. etc/init.d/execsbeat.

Should be /etc/init.d/execbeat.

+1


fn: read-only root fs becomes default

Set root fs as read-only by default.

I'm going to update/add this to docs. The original option was undocumented.


master_parts_list_raw.csv has crlf line endings

master_parts_list_raw.csv has crlf line endings. Contributors can inadvertently change the line endings for every line of the file when intending to edit only a few lines.
Two proposals to mitigate this are:
Option 1 #312 superseded by b5295acc83eda2de8eafed4b60b9c0142b2d4c67
Specify in .editorconfig that master_parts_list_raw.csv has crlf line endings. Other files have lf line endings.
root = true

[*]
end_of_line = lf
insert_final_newline = true

[parts_list/master_parts_list_raw.csv]
end_of_line = crlf

Originally posted by @sethfischer in https://github.com/nasa-jpl/open-source-rover/issues/298#issuecomment-853584639
Option 2 #320
Commit master_parts_list_raw.csv to the repo with Unix line endings and suggest contributors use Git's core.autocrlf setting.
The use of this setting could be documented in a file such as .github/CONTRIBUTING.md or CONTRIBUTING.md.
I believe option 2 would be a more typical approach when when contributors use a mix of operating systems.

Using Git's core.autocrlf setting might be best, but the parameters should be defined because it looks like they are different depending on the destination OS. I'm using MacOS, which uses the correct line endings, but I still managed to screw this up because Excel isn't always clear as to what it is doing and I am enough of a newb to not know to check it. It would be nice if git/GitHub was smart enough to handle this intelligently.


Update README.md

Just added some specific content related to the raspberry pi zero setup :)

And actually - Sorry for the trouble, but I had approved a PR with changes to this file a few weeks ago that I realize was never merged!
https://github.com/dupontgu/retro-ipod-spotify-client/pull/2/files
I think your instructions will still work well alongside what this author added, but you'll have to resolve conflicts. sorry about that!


Ghidra should use/upgrade existing config in ~/.ghidra rather than create a fresh one

When I upgrade Ghidra, it creates a fresh .ghidra_<VERSION> under ~/.ghidra/, so any customizations I've applied don't get carried forward. If I delete that new config and copy the most recent one:
$ rm -rf ~/.ghidra/.ghidra_<NEW_VERSION>
$ cp -a ~/.ghidra/.ghidra_<OLD_VERSION> ~/.ghidra/.ghidra_<NEW_VERSION>

...then Ghidra happily uses (and upgrades?) the copy of the previous version's configuration.
Describe the solution you'd like
I'd like for ghidra to (optionally?) do this automatically. Check for an existing configuration and either copy it and upgrade it or upgrade it in place. This behavior could possibly be enabled by command-line option, environment variable, or similar.
Here's a listing of my Ghidra config directory. In it you can see all the separate config subdirectories for the various Ghidra versions I've run.
❱ ls -1a ~/.ghidra
./
../
.ghidra-9.0.2/
.ghidra-9.0.4/
.ghidra_9.1-BETA_DEV/
.ghidra_9.1.1_PUBLIC/
.ghidra_9.1_PUBLIC/
backup/

Ghidra is supposed to search for and use your most recently used .ghidra settings directory.  From this directory will be pulled preferences and existing tools.  The options you configure in you Code Browser tool (the green dragon), that live in the previously used directory, should appear in your new Ghidra when you run it for the first time.  That is, the Code Browser tool you see in your new version of Ghidra should be the previously used tool.
If something is not getting pulled into your new Ghidra, then this is either a bug or some setting that  is not saved in the tool.

I'm definitely not seeing my settings until I explicitly copy  ~/.ghidra/.ghidra_<OLD_VERSION> to ~/.ghidra/.ghidra_<NEW_VERSION>

Is there any logging or other diagnostics I can gather and submit?

My guess is that the algorithm for finding old directories is failing.
To see logging messages for this code you can look in the userhome/.ghidra/.ghidra_new_version/application.log file.    To ensure the info is in the log file, you can delete the newest .ghidra directory and then restart the new version.   Once it has launched, examine the application.log file.    You should see an entry that looks like this near the beginning:
    DEBUG No tools found; Installing default tools   (DefaultProjectManager.java:324)

If the algorithm is working, then you should see more text related to processing existing tools.  If there are no more debug messges from the DefaultProjectManager, then the code did not find any of your old .ghidra directories.

I will point out that the logic for finding compatible .ghidra directories is to compare the running Ghidra version's release name against the previous release name.  So, based on your directory listing above, you effectively have 3 different release names available: <empty>, BETA_DEV, and PUBLIC (the release name is the trailing text on the directory name).
If your newest version is 'PUBLIC', then our algorithm should pick either .ghidra_9.1.1_PUBLIC/ or .ghidra_9.1_PUBLIC/, depending upon the directory timestamps.

Okay thanks for the help. I looked at the application log which reflected merging existing tools, so I double checked and my settings are carried over as they should be. I could have sworn they weren't before.
I'll close this for now and open a new issue if the problem returns.

Based upon my previous comment regarding release names, it is possible that you were in a situation where the settings were not pulled-in, specifically, when the release names changed.

This seems to be the case. When I pared my ~/.ghidra/ directory down to the following:
.ghidra-9.0.2/
.ghidra-9.0.4/
backup/

... and then run ghidra 9.1.1, I see nothing in application.log about merging existing tools.

Should you ever wish to force the usage of an incompatible directory, you should be able to append the release name to an existing directory in order to convince Ghidra to use it.

Okay thanks.
It seems to be working more or less as expected now. I think I was confused by:

Being prompted to re-accept EULA
Not reopening previously open project
Possibly once instance in the past of actually failing to merge tool settings from 9.0.4 due to directory name.

And so I assumed settings had not been copied over.
Not sure if failing to merge settings from 9.0.4 is a bug or not, but merging tool settings from 9.1_PUBLIC to 9.1.1_PUBLIC does seem to work.


add uid cache for UID of a mailbox (folder) to improve performance

Hi @Webklex,
this PR adds a cache for UID of a mailbox (folder).
Description
I noticed that when initializing each message, the ProtocolInterface::getUid($id = null) method is called. In this, the matching UID is to be found based on a message number. In the implementation of ImapProtocol the complete mailbox with all UIDs for each message is retrieved, iterated and searched for the matching message number and the stored UID. This causes not only a large additional effort in requests but also in the runtime of an execution.
For this problem I developed a UID cache, which writes the UIDs into an array at the first call of the ProtocolInterface::getUid($id = null). If in a future query the mailbox (folder) has not changed, the cache is used. On logout or when the mailbox (folder) is changed, the cache is cleared.
You can disable the cache in the configuration (uid_cache). By default it is enabled.
Tests
I have tried the cache on the following examples:
$messages = $inbox->query()->whereSince(Carbon::create(2022, 1, 1))->get();

It found 133 messages.
If the UID cache is deactivated the call needs 17290ms.
If the UID cache is enabled the call nedes 2211ms.
If I have not miscalculated, that is a time saving of 87.21%.
A second test with 100 messages:
$messages = $inbox->query()->all()->limit(100)->get();

It found 311 in the mailbox but only 100 messages were initialized.
If the UID cache is deactivated the call needs 15201ms.
If the UID cache is enabled the call needs 3621ms.
That is a time saving of 76.18 %.
Potential problems:

The cache must be reset in additional locations.
I have not tested the LegacyProtocol.
The cache could become invalid during a fetch.
In the implementation of ImapProtocol, the cache is refreshed if no UID is found. Only after that an exception is thrown.

I hope the PR is helpful and I haven't missed anything. I am happy to receive feedback!

Hi @HelloSebastian ,
many thanks for your pull requests and time spent in the issue section. I highly appreciate it :)
Best regards,


dpl: Move Grid from pointers to vectors

I found a destructor related bug in one of Google's test cases. Rather than debug it I figured I'd just move it to vector, and not worry about it.

I would have opted for boost::multi_array which is more efficient than either solution.

Seems like a good idea, but this one is about correctness, and not performance.

@maliberty Is this good to go?


[Task]: Differentiate between Tangle and Ledger

Task description
The wording in the block metadata is misleading. The Tangle consists of Blocks, the Ledger consists of UTXOs. Therefore a block can't be part of the ledger.

Requirements
Topic Proposal
The point should be something like Block Confirmation Status instead of Ledger Inclusion.
Description Proposal:
Transaction Payload: The block is confirmed by a milestone and the transaction successfully mutated the ledger state.
Data Payload: The block is confirmed by a milestone.
Acceptance criteria
Clarity between Blocks in the Tangle and Outputs in the Ledger.
Creation checklist

[X] I have assigned this task to the correct people
[X] I have added the most appropriate labels
[X] I have linked the correct milestone and/or project

[ ] Change header to Confirmation Status
[ ] For transactionPayload blocks, if ledgerInclusionState is confirmed, The block is confirmed by a milestone and the transaction successfully mutated the ledger state.
[ ] For transactionPayload blocks, if ledgerInclusionState is conflicting, The block is confirmed by a milestone but the transaction is conflicting.
[ ] Also for noTransaction inclusion state remove the , the data is included in the ledger part.

Do we actually call Blocks "confirmed" when they contain an invalid transaction? To me the confirmation state only makes sense on the transaction payload level. On block level I would stick to "inclusion" state (to the Tangle).
A) Your Tx was included to the Tangle and confirmed
B) Your Tx was included to the Tangle, but conflicting

Changed the header to Inclusion Status


Conflict between Toasts and StatusBar Height (UIKit.UIApplication.SharedApplication.StatusBarFrame.Height)

Using the Toasts.Forms.Plugin has an unexpected conflict with Xamarin.iOS asking the operating system for the height of the Status Bar.
In Xamarin Forms I ask the OS for the height of the Status Bar every time there is a SizeChanged event and then adjust my screen layout (the XamForms StackLayout padding)
I use UIKit.UIApplication.SharedApplication.StatusBarFrame.Height to get the height.
This works perfectly in my apps but fails after the first Toast has been generated using Toasts.Forms.Plugin.
Before the Toast, the call to UIKit.UIApplication.SharedApplication.StatusBarFrame.Height gives me 20 pixels for portrait and 0 pixels for landscape (on iPhone). On iPad it is always 20 pixels in both orientations.
After the Toast the call to UIKit.UIApplication.SharedApplication.StatusBarFrame.Height gives me 0 pixels for portrait and 20 pixels for landscape on iPhone,
Something has happened so that when Xamarin Forms and Xamarin.iOS asks for the height, it gets incorrect values if a Toast has been generated.
My code is like this in a Xamarin Forms app
    	this.SizeChanged += (object sender, EventArgs e) =>
			{
				// iOS on phones hides the Status Bar in Landscape (iPad does not)
		        if (Device.OS == TargetPlatform.iOS) {
					int sbHeight = (int)UIKit.UIApplication.SharedApplication.StatusBarFrame.Height);
					stackLayout.Padding = new Thickness (0, sbHeight, 0, 0);
    			}
			};

Other tests...
I have tested with the pre release of 1.7.x.x and there is no change.
I have tested with the current Alpha of Xamarin.iOS 8.13.x.x  and no change.
ACR's Toast library works fine so currently use your library for Android and ACR for iOS
Thanks
Roger

@RogerHardiman - I can't seem to replicate this error. Any chance you provide a sample proj showing the behavior?

We can close this bug report down.
Tested today with the an updated Xamarin Platform (latest Xamarin Studio, Mono, Android and iOS libraries) and the problem is not showing up.


[FLINK-7458] Generalize GatewayRetriever for WebRuntimeMonitor

What is the purpose of the change
Introduce a generalized GatewayRetriever replacing the JobManagerRetriever. The
GatewayRetriever fulfills the same purpose as the JobManagerRetriever with the
ability to retrieve the gateway for an arbitrary endpoint type.
This PR is based on #4527.
Brief change log

Added a LeaderRetriever which retrieves and stores the current leader information
Introduce the generic GatewayRetriever to retrieve arbitrary RpcGateways
LeaderGatewayRetriever implements GatewayRetriever and extends LeaderRetriever to resolve the leader address into the specified gateway type
RpcGatewayRetriever extends LeaderGatewayRetriever for the flip-6 code, AkkaJobManagerRetriever does the same for the old code which only needs to retrieve the JobManagerGateway

Verifying this change
This change added tests and can be verified as follows:

Added AkkaJobManagerRetrieverTest and RpcGatewayRetrieverTest

Does this pull request potentially affect one of the following parts:

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

Documentation

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

Thanks for the review @zentol. Rebasing onto the latest master and if Travis gives green light, I'll merge this PR.


Documentation update for testing React Native using jsdom

As discussed in #1375, I was also unable to get React Native testing working with Jest/Enzyme with the current documentation instructions.
I see that a React Native adapter is still being discussed in #1436, but I found that some users have had success with jsdom. I was able to get both react-native-mock-renderer and jsdom working, but react-native-mock-renderer didn't result in very clear snapshots when using Jest snapshot testing.
I have therefore provided some instructions here for how I was able to get React Native testing working with jsdom, and I added some examples from the React Native boilerplate project where it is currently working. I decided to leave in a few helpful tips of other issues I encountered along the way as well.

Hey @shawnaxsom I'm trying out what you have in the docs, but I'm getting Cannot find module 'StyleSheet' from 'react-native-implementation.js'

@jpaas Is the code public so I can see? Are you importing StyleSheet anywhere? StyleSheet should come from "react-native" instead of "react-native-implementation" generally.
Take a look at the boilerplate code we have here to compare:
https://github.com/ProminentEdge/mobile-boilerplate

@shawnaxsom no sorry its a private repo. I did have a look at your repo. My setup-tests.js is identical. Even though I'm using typescript I wasn't able to get your jest.config.js to work. This is my jest.config.js that works for my non-enzyme tests:
module.exports = {
  preset: "ts-jest",
  setupTestFrameworkScriptFile: "<rootDir>/setupTests.js",
  transform: {
    // Required to work around this problem: https://github.com/facebook/react-native/issues/19859
    "^.+\\.(js|tx|tsx)$": "<rootDir>/node_modules/react-native/jest/preprocessor.js",
  },
}

@jpaas Have you compared versions in package.json? What version of "react-native" are you on?

@shawnaxsom I'm using react-native 0.57.4 & react 16.6.0-alpha.8af6728 vs your 0.57.2 and react 16.5.0. I tried rolling back to your version, but no difference.
I tried that jest preset in the package.json but it didn't help, I suspect because my jest.config.js overrides it with the ts-jest preset.
When I try to use your jest.config.js, I get the error Couldn't find preset "module:metro-react-native-babel-preset" relative to my root dir`

You might need to install metro-react-native-babel-preset and use our
babel.config.js if you want to try our jest.config.js.
On Fri, Oct 26, 2018 at 10:36 AM Julian Paas<EMAIL_ADDRESS>wrote:

@shawnaxsom https://github.com/shawnaxsom I'm using react-native 0.57.4
& react 16.6.0-alpha.8af6728 vs your 0.57.2 and react 16.5.0. I tried
rolling back to your version, but no difference.
I tried that jest preset in the package.json but it didn't help, I
suspect because my jest.config.js overrides it with the ts-jest preset.
When I try to use your jest.config.js, I get the error Couldn't find
preset "module:metro-react-native-babel-preset" relative to my root dir`
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/airbnb/enzyme/pull/1873#issuecomment-433429553, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AjcHuroBk9_ioRJgaPf05RC1D4JWXW8lks5uox3ngaJpZM4XyN94
.

@shawnaxsom I am using metro-react-native-babel-preset as my preset in my .babelrc, so I imagine there's something about your jest.config.js that is preventing it from being resolved.

If you have time to set up a public project that replicates the issue I
would be happy to take a look, or I might be able to screen share at some
point. It's hard to diagnose unfortunately without being able to look at
the project.
On Fri, Oct 26, 2018 at 12:33 PM Julian Paas<EMAIL_ADDRESS>wrote:

@shawnaxsom https://github.com/shawnaxsom I am using
metro-react-native-babel-preset as my preset in my .babelrc, so I imagine
there's something about your jest.config.js that is preventing it from
being resolved.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/airbnb/enzyme/pull/1873#issuecomment-433467651, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAlGwkh5zQgkoPhjyl2CndvRrnfev9DTks5uozk8gaJpZM4XyN94
.


style(ui): dispatch ui styling

What new features does this PR implement?

Adds reRun simulation button to profile page. BE AWARE: It is currently in placeholder mode and currently simply returns a message to the user about the service coming soon.
Substantial UI overhaul to Dispatch App
Routing as necessary

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


Ignore compile errors when generating into same package

Goverter requires type information for generating the conversion methods. When output:file is the defined in the same package as the conversion interface it likely that the generated content will produce compile errors if the source or target types are changed.
To properly work around this issue, you currently have to remove the generated file before running goverter. Example: https://github.com/hetznercloud/hcloud-go/blob/701f3810de06eeffbb6d820abfd6d0c7d6ad5ec1/script/generate_schema.sh
With the addition of #77 this problem will be more likely because it more or less requires that the generated output is in the same package.
Goverter should natively support by ignoring files generated by goverter when loading the packages for conversion. I've two proposals for this:

Remove the generated files before loading packages. Either by removing all files with the generated by github.com/jmattheis/goverter ... comment at the top, or by removing all files defined by output:file.
Add a build constraint to all generated files. E.g.//go:build !goverter_scan
// +build !goverter_scan

and then load the conversion interface with -tags goverter_scan. This should prevent compile errors originating from goverter generated files.

I'm in favor of the second proposal.

@pauhull do you have an opinion regarding this issue?

Maybe there could be a goverter flag (something like assignImplInstanceTo ) to include the init function in the generated file?

I think this is too specific to your use-case, but I'd be okay with a more generic solution like adding raw code to the output:file:
// goverter:converter
// goverter:output:file ./output.gen.go
// goverter:output:raw func init() {
// goverter:output:raw     converter = &converterImpl{}
// goverter:output:raw }
type converter interface {
}

Yes, that makes sense. I don't know if it's possible, but maybe a solution like this would look cleaner:
// goverter:converter
// goverter:output:file ./output.gen.go
/* goverter:output:raw
func init() {
    converter = &converterImpl{}
}*/
type converter interface {
}

That will be difficult because the current setting only uses lines starting with goverter:. I've moved this into a separate ticket #113 as the solution with build constraints (https://github.com/jmattheis/goverter/issues/111#issuecomment-1835831040) should be good enough for now.

@pauhull could you try out the ignore-compile-error branch? Changes: https://github.com/jmattheis/goverter/compare/ignore-compile-error?expand=1
With this, generated files will receive go:build !goverter as build directive and when loading packages -tags goverter is satisfied.

go install github.com/jmattheis/goverter/cmd/goverter@ignore-compile-error
or go run github.com/jmattheis/goverter/cmd/goverter@ignore-compile-error [pattern]
or go get github.com/jmattheis/goverter@ignore-compile-error

Yes, the build flags and type assignment now work with the branch you provided 🙂

@pauhull Awesome, thanks for trying it out!

Fixed in v1.3.0. See https://goverter.jmattheis.de/reference/build-constraint


[BUG] MULTIPLE ISSUES

🔵 Describe the bug:
Not SAVING any changes whatsoever ON NEW MACROS ( cannot create macro even with default name, as well im not able to see anything on screen to start creating blocks )
IF I RENAME OR MAKE CHANGES ON MACROS MADE WITH OLDER VERSIONS OF GSE 3.2.00 AS PROVIDED IN SCREENSHOTS, changes made, are saved ok
edit : older macros same as new, tried on different chars aswell, not saving
🔵 To reproduce: (Steps to reproduce the behavior)

Write /GSE on chat to open.

Click on Sequences Button.

Create NEW_SEQUENCE ( or rename old macro already there ) on Sequence Editor.

🔵 The error:
No errors on screen with /console scriptErrors enabled, nothing to get with bugrab/sack.
🔵 Screenshots:

🔵 Expected behavior:
Be able to create new macros, and able to rename them and save any changes made ( old and new ).
Also be able to drag and drop new icon on bar.
🔵 GSE.lua file:
GSE.lua.txt
GSE.lua.bak.txt
🔵 Desktop (please complete the following information):

OS: Windows 11 Pro 23H2 ( build 22631.3737 )
Game Version: <IP_ADDRESS>185

🔵 GSE Version:

Version: 3.2.00-alpha10-c-PatronBuild
Downloaded From: https://discord.com/channels/486059368983429131/1019032009911308359/1254029321442689081

🔵 Additional context:
Attached to this issue are both gse.lua & gse.lua.bak ( just in case u need both ).
SLG, Borland1891 & OAK are having along the same issues since 1st version of alpha 10 ?!

Resolved with #1459


cinnamon.nemo: 4.8.4 -> 4.8.6

Motivation for this change
Bump to latest version at the time of making this PR.
Things done

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

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

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

Result of nixpkgs-review pr 120269 at 54967cb4 run on x86_64-linux 1

4 packages built successfully:

cinnamon.cinnamon-common
cinnamon.cinnamon-gsettings-overrides
cinnamon.cinnamon-screensaver
cinnamon.nemo

3 suggestions:

warning: unclear-gpl
gpl2 is a deprecated license, please check if project uses gpl2Plus or gpl2Only and change meta.license accordingly.
Near pkgs/desktops/cinnamon/nemo/default.nix:65:5:
   |
65 |     license = [ licenses.gpl2 licenses.lgpl2 ];
   |     ^

warning: unused-argument
Unused argument: fetchpatch.
Near pkgs/desktops/cinnamon/nemo/default.nix:2:3:
  |
2 | , fetchpatch
  |   ^

warning: unclear-gpl
lgpl2 is a deprecated license, please check if project uses lgpl2Plus or lgpl2Only and change meta.license accordingly.
Near pkgs/desktops/cinnamon/nemo/default.nix:65:5:
   |
65 |     license = [ licenses.gpl2 licenses.lgpl2 ];
   |     ^


discord

Hail to thee citizen!  Do you have by any chance a discord group for your project - and if not could you create one pls

I love the project and the idea of creating a website and discord. We could give this coin a real value and have it listed. Anyone?

I created an UNOFFICIAL Discord if y’all want to chat.
https://discord.gg/XWWfzm3mUM
I am by no means the J6Q Dev of this project. Simply a normal person with crypto interest. The Discord will have limited moderation for those that want to chat. If the Dev’s do not wish to have this Discord Server up, I will delete the server.

Does anyone know who the dev is?

Hey John Hancock, I get that there is no “Developers” according to description here on GitHub, but a community is actually building on the Unofficial Discord channel. I hope you consider joining and help guide the community on a project you started. :)

Way to take something fun and ruin it.


Enable address transaction page navigation by block number in addition to tx hash

I was browsing the transaction history of an address that made over 100,000 transactions. I wanted to navigate to a page that contained a specific block number (say 12345678).
When you use the controls, UndefinedPageControl/UndefinedPageButton exposes a transaction hash in the query parameters (/address/${address}/txs/${direction}?h=${hash}), so to be able to navigate to the page with block 12345678, I navigated to /block/12345678, clicked the transactions button, copied the first transaction hash in the block, and finally pasted it into the query parameter for h. Finally, I was on the page I wanted, even though this hash was not sent by the right address!
So I propose we allow some other query parameter like ?b= or ?block= that fetches the first transaction in the block and redirects to the ?h=${hash} page. That way, it's easy to navigate to the right page by block number and not just transaction hash.

Full pagination with page number navigation will help when using the interface only, but when searching for transactions at a specific block number I would still have to do a binary search with the page numbers to find the page containing the target block number. I have to do this when using Etherscan today.
Would it be possible to find the correct page number from a block number in the new scheme?

Sure, and I agree with the implementation idea - it's far better to do the search in-node, especially under high-latency RPC conditions.


Mute Abyssal Sire

Add Abyssal Sire dying audio to default options, most annoying sound in the game

237 fourface_death


tile38 drops properties

tile38 SET command will not store GeoJSON properties.
SET fleet test OBJECT {    "features":[       {          "geometry":{             "coordinates":[                [                   [                      -118.27880859375001,                      33.779147331286474                   ],                   [                      -117.97119140625,                      33.815666308702774                   ],                   [                      -117.70751953125,                      34.05265942137599                   ],                   [                      -118.27880859375001,                      33.779147331286474                   ]                ]             ],             "type":"Polygon"          },          "properties":{},          "type":"Feature"       }    ],    "properties":{       "cityName":"shooby",       "continent":"North America",       "country":"USA",       "subdivisions":"shoob county"    },    "type":"FeatureCollection" }
I would expect to GET fleet test to be:
{    "type":"FeatureCollection",    "features":[       {          "type":"Feature",          "geometry":{             "type":"Polygon",             "coordinates":[                [                   [                      -118.27880859375001,                      33.779147331286474                   ],                   [                      -117.97119140625,                      33.815666308702774                   ],                   [                      -117.70751953125,                      34.05265942137599                   ],                   [                      -118.27880859375001,                      33.779147331286474                   ]                ]             ]          },          "properties":{            "cityName":"shooby",            "continent":"North America",            "country":"USA",            "subdivisions":"shoob county"          }       }    ] }
But instead I get:
{    "type":"FeatureCollection",    "features":[       {          "type":"Feature",          "geometry":{             "type":"Polygon",             "coordinates":[                [                   [                      -118.27880859375001,                      33.779147331286474                   ],                   [                      -117.97119140625,                      33.815666308702774                   ],                   [                      -117.70751953125,                      34.05265942137599                   ],                   [                      -118.27880859375001,                      33.779147331286474                   ]                ]             ]          },          "properties":{}       }    ] }
The properties object is empty.  The home page of GeoJSON.org shows an example of "properties" as a valid GeoJSON property, and if you read the spec you'll see it being used:
{        "type": "Feature",        "id": "f1",        "geometry": {...},        "properties": {...},        "title": "Example Feature" }
I think tile38 should save "properties" as an arbitrary JSON object.

A FeatureCollection should only have the type and features members. A Feature is the only type that allows for the properties and id fields.
RFC 7946
Unfortunately as it stands right now Tile38 drops all non-conforming GeoJSON members.
If you need the properties at the top-level perhaps you can wrap the FeaturesCollection inside a Feature object like this:
{
    "type": "Feature",
    "geometry":{
        "type": "FeatureCollection",
        "features": [
            {
                "type":"Feature",
                "geometry": {
                    "type":"Polygon",
                    "coordinates": [[
                        [-118.27880859375001,33.779147331286474],
                        [-117.97119140625,33.815666308702774],
                        [-117.70751953125,34.05265942137599],
                        [-118.27880859375001,33.779147331286474]
                    ]]
                },
                "properties":{}
            }
        ]
    },
    "properties":{
        "cityName": "shooby",
        "continent": "North America",
        "country": "USA",
        "subdivisions": "shoob county"
   }
}

I’m closing this issue because it has been inactive for a few months. Please reopen if needed.
Thank you!


TaskActionToolbox: Remove allowOlderVersions, lift interval constraint

allowOlderVersions has been stuck true for a while due to a bug (introduced in
566a3a61), but I think it's actually OK this way. I think it's reasonable to
expect tasks to choose versions in some way that makes sense, so long as they
don't choose one larger than their taskLock version. This is still verified.
The interval constraint was introduced to force tasks to break up their
segment insert lists into manageable chunks. They are already doing this, and
I think it's reasonable to expect them to do so without enforcement.
Lifting these constraints paves the way for transactional insertion of segments
that have varying versions and may be for varying intervals.

:+1:

@gianm sounds good, can we put your useful PR comments somewhere in the code?

@xvrl what/where were you thinking of adding? I did add a "word of warning" section about splitting up large segment sets. I didn't add anything about allowOlderVersions, since the lighter more useful constraint is still enforced (your version must be <= the lock version rather than == the lock version).

@gianm do we note anywhere that we "expect tasks to choose versions in some way that makes sense, so long as they don't choose one larger than their taskLock version"

@xvrl ah, nope, I just added it to the javadoc.


yaml loader patched

yaml.load(f) returned:
TypeError: load() missing 1 required positional argument: 'Loader'
yaml.safe_load(f) solves the issue.
python version: 3.10
yaml version:     6.0

Other PR has been merged that fixed this same issue


Y24-382 - Research - updating volume after cherrypicking

Description
As an SSR (Liz C) I would like to know when well volumes in Sequencescape are updated after cherrypicks, so that I am confident when re-picking from a well that the remaining volume shown is correct.
Acceptance Criteria
The following outputs from the research are produced:

[x] Find where in the code the volume update is done after cherrypicking. N.B. I think it doesn't happen during the cherrypicking pipeline, but rather during the bed verification that follows.
[x] Check whether anything affects whether that volume update happens e.g. which option they pick out of ‘pick by volume (μl)’, ‘pick by concentration (ng/μl)’ and ‘pick by amount (ng)’.
[x] Document findings to an appropriate level in the user facing documentation produced by this story.
[x] Look into Liz C's findings when she tested this - get spreadsheet from Katy - not sure if it's appropriate to attach. Are there any bugs here? If so, update this placeholder story with what needs to be fixed.

Who the primary contacts are for this work
Katy
Knowledge or Stake holders
Liz C
Additional context or information
Related stories:

https://github.com/sanger/sequencescape/issues/4410
https://github.com/sanger/sequencescape/issues/4411
https://github.com/sanger/sequencescape/issues/4413

A bit of extra detail after reading the code that updates the source well volume:

When the cherrypick pipeline pages are clicked through, picked_volume on the well_attributes table is set, for the target well.
When the bed verification happens, this value is retrieved and subtracted from the source well's current_volume (also on well_attributes.

@StephenHulme can you confirm if this is correct?

Given the table of results from test cherrypicks below, there appear to be some bugs:

Thanks for this investigation, it looks great. Looks like there is a bug in the setting of destination plate well volumes.

Plate SQPD-10864 replicates the issue identified in the training SS spreadsheet where the volume pick is less than 1 ul.

That plate is missing from your table, could you add it? Could you describe a bit more about the "issue identified in the training SS spreadsheet where the volume pick is less than 1 ul", please?
I think the issue is that the volume pick is less than the specified 'robot minimum picking volume' - is that correct?
One more question - was the one mentioned above the only issue raised by Liz in her spreadsheet, or are there more to look into?
Thanks.

Thanks for the answers to my questions. Looks like we're just waiting on some clarification from Liz on your 2 q's then (v or v+b, and destination volume).


Command-line utilities not found when tarsnap is installed through Homebrew

I installed tarsnap through Homebrew and went to run the GUI but it couldn't find the utilities. If I enter "/usr/local/bin" it will let me proceed. Maybe it should check this folder (or better yet PATH)?

How did you run the GUI? And what exactly did you do that encountered the error? If this is failing, it might be an issue with the Homebrew formula.

I ran into this once too. I'm not sure how to replicate it, but I noticed something strange in the logs when I ran Tarsnap.app for the first time:
unknown(0): System language is  English
unknown(0): Error creating the PersistentStore: app.appdata not set.
unknown(0): Error creating the PersistentStore: app.appdata not set.
unknown(0): PersistentStore was not initialized properly.
unknown(0): PersistentStore not initialized.

On the other hand, I tested the new cask formula on a fresh laptop and got no issues.

Note to self: if you run
open ./Tarsnap.app
./Tarsnap.app/Contents/MacOS/Tarsnap

then it'll inherit the $PATH from your shell.  To reproduce this bug, you must launch Tarsnap.app from the Finder.

Also note to self: you can test with
PATH=/usr/bin:/bin:/usr/sbin:/sbin ./Tarsnap.app/Contents/MacOS/Tarsnap

to see the debug console log messages.

Huh, I thought that I fixed this (at the time) in #204.
Oh well.  It's a problem again now for Apple Silicon machines, since homebrew changed the installation directory.  They deliberately do not include the command-line utilities in their PATH https://docs.brew.sh/FAQ#my-mac-apps-dont-find-homebrew-utilities.
Fortunately, there's an easy solution: in addition to searching /usr/local/bin (which was what #204 did), we need to search /opt/homebrew/bin.
(In theory, we could pick the directory based on what type of architecture we're running on, like https://github.com/Tarsnap/tarsnap/pull/594/commits/87a1be99af6c8a3297bd24040fabb26a0f159762, but I don't think we need to complicate it like that.)

Fixed in master, but I'll leave this issue open until we release 1.0.3.


typo in nucleo_l496zg.dts

Describe the bug
When looking for another problem I noticed that this dts file refers to usart2_pins_d and I don't think this is such a thing, but there is a usart2_pins_b.   I don't have this board to verify.
To Reproduce
Steps to reproduce the behavior:

do a global search for usart2_pins_d in the zephyr src tree
2.Notice that it is only found in one place which is not correct and you will get dts compile issues

Expected behavior
all pin references should be present
Impact
annoyance for anyone trying to use that uart
Screenshots or console output
diff --git a/boards/arm/nucleo_l496zg/nucleo_l496zg.dts b/boards/arm/nucleo_l496zg/nucleo_l496zg.dts
index bc69847856..f3239c9b48 100644
--- a/boards/arm/nucleo_l496zg/nucleo_l496zg.dts
+++ b/boards/arm/nucleo_l496zg/nucleo_l496zg.dts
@@ -65,7 +65,7 @@ arduino_serial: &lpuart1 {};

 &usart2 {
        current-speed = <115200>;
-       pinctrl-0 = <&usart2_pins_d>;
+       pinctrl-0 = <&usart2_pins_b>;
        pinctrl-names = "default";
        status = "ok";
 };

Environment (please complete the following information):

OS: MacOS
Toolchain (e.g Zephyr SDK,ZEPHYR_TOOLCHAIN_VARIANT="gnuarmemb")
zephyr git commit 3c82d233e3f9cd74e72cadd60e435f835ab46607

Additional context

@ErekoseTCE, after a quick search it seems usart2_pin_d is actually valid and defined:
https://github.com/zephyrproject-rtos/zephyr/blob/bfa89782a86b23494504efc36387e8487095638a/dts/arm/st/l4/stm32l4-pinctrl.dtsi#L49
Then, fyi, sadly these references are not yet used in Zephyr and you should actually rely on inmux.c file. Device tree pinmux definitions have been pushed before the code to actually use them and due to some changes that happen in between, the code never went in and they are finally not actually used. Still, some people use these out of tree and this is why they are maintained. Which is the reason for this unclear status. Sorry for that.

My bad, I am not sure how it happened but a search in my tree did not report that entry, but then I noticed that a few dts files were not present in my tree.  I have no idea why they were missing, but a fresh checkout restored them and now I see the references you mention.    As far as I can tell those dtsi files were the only ones missing, so I must have done but can't figure out how.   Anyway sorry for the false alarm


Universal binaries for macOS

A special format that contains both arm64 and amd64 executables in a single file.

https://goreleaser.com/customization/universalbinaries/

@matryer @breml please share your feedback if you have any. Will merge this change in in a few days if there are no concerns raised.

@sudo-suhas I am not a mac user, so I can not test this, sorry. But as far as I can tell, the PR looks good to me.

Thanks @breml. There is one aspect that I would appreciate feedback on. Fat binaries, as the name suggests, are large in size since they contain binaries targeting both architectures. Currently, I am opting to publish fat as well as architecture-specific binaries so that if someone wishes to download the more specific smaller size binary, they can. Would you agree with this choice?

Yes, this sounds good to me.

Changes released in v0.2.4 🎉


varint: improve encode/decode perf

Encode: Pre allocating the output vec to the worst case of 19 bytes removes the need to re-allocate the vector with each additional push
Decode: Shift left by 7 bits rather than multiplying by 128 taking advantage 128 == 2^7

bench
original (ns)
pre allocate (ns)
shift (ns)

encode max
125
47

encode mid
80
28

encode small
40
26

decode max
6

1

decode mid
2

1

decode small
1

1

The difference is relatively minor on the order of nanoseconds especially in decode however when a future indexer may be decoding/encoding many records to perform an initial sync the difference can add up
Below are the basic benchmarks I used to validate the improvement however did not include them in the repo because they require using Rust nightly and enabling unstable features to use the bench feature
  use test::{Bencher, black_box};

  #[bench]
  fn benchmark_encode_max(b: &mut Bencher) {
    b.iter(|| encode(u128::MAX));
  }

  #[bench]
  fn benchmark_encode_mid(b: &mut Bencher) {
    b.iter(|| encode(u64::MAX as u128));
  }

  #[bench]
  fn benchmark_encode_small(b: &mut Bencher) {
    b.iter(|| encode(12345));
  }

  #[bench]
  fn benchmark_encode_pre_alloc_max(b: &mut Bencher) {
    b.iter(|| encode_pre_alloc(u128::MAX));
  }

  #[bench]
  fn benchmark_encode_pre_alloc_mid(b: &mut Bencher) {
    b.iter(|| encode_pre_alloc(u64::MAX as u128));
  }

  #[bench]
  fn benchmark_encode_pre_alloc_small(b: &mut Bencher) {
    b.iter(|| encode_pre_alloc(12345));
  }

  #[bench]
  fn benchmark_decode_small(b: &mut Bencher) {
    let input = &[223, 57];
    b.iter(|| black_box(decode(input)));
  }

  #[bench]
  fn benchmark_decode_mid(b: &mut Bencher) {
    let input = &[128, 254, 254, 254, 254, 254, 254, 254, 254, 127];
    b.iter(|| black_box(decode(input)));
  }

  #[bench]
  fn benchmark_decode_max(b: &mut Bencher) {
    let input = &[130, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 127];
    b.iter(|| black_box(decode(input)));
  }

  #[bench]
  fn benchmark_decode_shl_small(b: &mut Bencher) {
    let input = &[223, 57];
    b.iter(|| black_box(decode_shl(input)));
  }

  #[bench]
  fn benchmark_decode_shl_mid(b: &mut Bencher) {
    let input = &[128, 254, 254, 254, 254, 254, 254, 254, 254, 127];
    b.iter(|| black_box(decode_shl(input)));
  }

  #[bench]
  fn benchmark_decode_shl_max(b: &mut Bencher) {
    let input = &[130, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 254, 127];
    b.iter(|| black_box(decode_shl(input)));
  }

I misread the documentation on checked_shl it's validating the argument not the operation and was a stale test result I looked at before pushing.
Now explicitly checking the top 7 bits before performing the shift and erroring as required

Thanks for the PR! The canonical implementation is now being added to ord, check out this PR.
The varint implementation now writes varints into a Vec<u8> so it doesn't allocate a separate vec.


v17 planned changes

Starting a list of my desired breaking changes, feedback welcome. We can perform this release once we have compiled enough changes. We should watch out for any breaking changes needed for ESLint v9 in the coming months.
Planned:

Requires Node.js 18.x || >=20.x
Requires eslint >= 8.23.0
Start using enhanced-resolve to improve ts support (#139)

I think we should also add transpiled types from jsdocs

When this version planned to be released?

it depends. will wait for the eslint v9 to be released, it may take a few months.

It may be worth making a v17 branch, and putting the changes into it :thinking:
That way we can start progressing towards the other things in the v17 milestone :)

sounds an interesting idea! 👍
or we can checkout a 16.x branch, and start merging breaking changes to master, backport non-breaking changes to 16.x if needed. What do you prefer?

I think I prefer that idea more! It feels more like a step forward.

16.x: https://github.com/eslint-community/eslint-plugin-n/tree/16.x

Awesome!
I assume that this means we can merge the first few big PRs and publish a release with a tag 🤔


feat: Output cost report as JSON

Fixes
CostReport.txt is unstructured, making it difficult to parse it. Add a new report JsonCostReport.json with this sctructure:
{
  "currency": "USD",
  "cost": {
    "virtual": 0.07,
    "physical": 0.25,
    "total": 0.32
  },
  "billable-time": {
    "virtual": 4,
    "physical": 3,
    "total": 7
  }
}

See https://github.com/Flank/flank/issues/2197
Test Plan

How do we know the code works?
A new report named JsonCostReport.json should be generated.

Checklist

[x] Documented
[x] Unit tested
[ ] Integration tests updated

I have read the CLA Document and I hereby sign the CLA

recheck

Replaced by https://github.com/Flank/flank/pull/2273.


strip-ext doesn't work when called after path-reduce

This works (extensions are stripped)
var stuff = require('../stuff/*.js', {
    mode: 'hash',
    resolve: [ 'strip-ext', 'path-reduce' ]
});

This doesn't
var stuff = require('../stuff/*.js', {
    mode: 'hash',
    resolve: [ 'path-reduce', 'strip-ext' ]
});

Could you elaborate on the output you would expect vs the output you are getting?

I expect the filename without the extension... That's what strip-ext is supposed to do, right ?

Yes, that is right.
However, to more accurately debug this I'd like a literal example of input, actual output and expected output. That way, I can also turn it into a test case and ensure no regressions occur at a later point.
Sorry if I seem overly adamant about this, but it is with the best intentions for both our sakes.

Investigating this because it is related to bug #13


⚠ GitLab Server has degraded performance

In 8bed0bf, GitLab Server (https://gitlab01.its-telekom.eu) experienced degraded performance:

HTTP code: 200
Response time: 6218 ms

Resolved: GitLab Server performance has improved in 26f1907.


chore: bdd-ghfjxy-import-1568454207 to 0.0.1

chore: Promote bdd-ghfjxy-import-1568454207 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


jenkins integration build timed out at 10 hours

Describe the bug
It looks like our integration build that tests the stable versions of Spark timed out after 10 hours. It looks like we do builds in 3 different stages and within those stages things are parallel. But I think that will means we get 3 times the max test time. It looks like each of those is taking like 3.5 hours so we hit the timeout.  I will increase the timeout for now but we may want to find a better way to do this.

cc @pxLi @NvTimLiu

also note the prerelease build only seems to be taking about 8 hours so not sure what diff is there

I have checked the test logs, since we have some logic to auto decide the parallelism of the tests, https://github.com/NVIDIA/spark-rapids/blob/branch-22.02/jenkins/spark-tests.sh#L257-L262
if its > 7 (w/ larger gpu mem), the total runtime would actually spend 40-60 mins comparing to <= 7.
The reason why prerelease looks fine is due to we always use T4 to test all binaries, but for dev one since we do not have so many resources, we leverage a pool of multiple-type gpus, so some test could go on T4, other could go on A30/A100 one which increased the parallelism to 8.
I will update the upper limitation to 7

close this for now. If we see this again after more tests cases, we can create another issue


echo is ignoring -- char

With our:
./target/debug/coreutils echo -- 'foo'
foo

with GNU:
 /usr/bin/echo  -- 'foo'
-- foo

Tested by tests/misc/echo.sh

I took a look at this
clap doesn't support this AFAIK. So I opened a discussion here : https://github.com/clap-rs/clap/discussions/5305


Add newline separated json (JSONL) format

Would be nice to see a newline separated JSON format added... though the JSON size isn't too bad, it's still relatively big and newline-separated JSON is a bit easier for import.
Also, not sure if there are other updates as it looks like this repository is about 5 years from the last commit.

Yeah, times have changed a bit!
I agree with the idea of doing newline delimited json. I'll see what I can do.


Spin up temp staging VM

We'll stage on this so the app team has something to point at.

Done, details are in slack #api_integration


Refactor and document NpgsqlDatabaseModelFactory (3)

Part of #597
Based on #600

This PR is mostly reorganization + the following refactor:
// before
static Func<string, string> GenerateSchemaFilter(IReadOnlyList<string> schemas)
{
    if (schemas.Any())
    {
        return s =>
        {
            var schemaFilterBuilder = new StringBuilder();
            schemaFilterBuilder.Append(s);
            schemaFilterBuilder.Append(" IN (");
            schemaFilterBuilder.Append(string.Join(", ", schemas.Select(EscapeLiteral)));
            schemaFilterBuilder.Append(")");
            return schemaFilterBuilder.ToString();
        };
    }
    return null;
}

// after
static Func<string, string> GenerateSchemaFilter([NotNull] IReadOnlyList<string> schemas)
    => schemas.Any()
        ? s => $"{s} IN ({string.Join(", ", schemas.Select(EscapeLiteral))})"
        : (Func<string, string>)null;

GenerateSchemaFilter is called just once on what doesn't look to be a hot path.
@roji Any objections?

The refactoring of GenerateSchemaFilter() is indeed nice, but as mentioned elsewhere this fragment was copied as-is from SqlServerDataModelFactory, and it's a good idea to maintain the exact same code (much easier to detect and understand changes, diff...). I'd rather we left things as they are, or submitted a parallel PR to EF Core for fixing on their side as well.
(no need to revert this though, just worth keeping in mind for the future)

Just to give some context, I've been synchronizing with EF Core from the early days of pre-1.0.0 (beta5 or something), and it's sometimes a very painful process to understand what happened upstream that's causing breakage etc. Anything that can help us keep our codebase similar to theirs goes a long way, even including minor things such as method organization/regions.
It's true that EF Core is now much more mature and maybe we can relax a little, but it's still important. This is unlike Npgsql where we can do whatever we want, since there's nothing to synchronize with.

Anything that can help us keep our codebase similar to theirs goes a long way, even including minor things such as method organization/regions.

I guess my only qualm with that strategy is that this file is enormous and was looking quite intractable... It would be helpful if the EF Core team provided some guidance (perhaps they already have somewhere?) regarding the extent to which they expect/anticipate that we're maintaining structural parity.

Anything that can help us keep our codebase similar to theirs goes a long way, even including minor things such as method organization/regions.

I guess my only qualm with that strategy is that this file is enormous and was looking quite intractable... It would be helpful if the EF Core team provided some guidance (perhaps they already have somewhere?) regarding the extent to which they expect/anticipate that we're maintaining structural parity.

It's true that the file is big, but it's just a series of methods, each responsible for a very clear part of the job (tables, columns, constraints...), so I don't see a big problem there.
I don't think the EF Core team really have any opinion on whether we maintain structural parity - we're our own provider. Maintaining this parity is just a lesson I learned after doing this painful business for a long time - although I do admit it's gotten much better as EF Core has matured and API churn has reduced.


backticks followed by full stop

If I put a word into backticks followed by a full stop at the end of a line ie something like `Makefile`.
The result could be something like `Makefile`
.
Which produces Makefile . (ie a space before the full stop)

thanks for the report!

I can't seem to reproduce this on master, have you only tried via typst-lsp?

This is definitely fixed on master, feel free to test and report if otherwise! (with another example) ;)
Closing this for now


Interoperator unbind

Pull Request Test Coverage Report for Build 3609

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.007%) to 89.516%

Totals

Change from base Build 3607:
0.007%

Covered Lines:
9414

Relevant Lines:
10156

💛  - Coveralls


Get rid of DateTimeOffset?

e.g. in Secret class - but also everywhere else

done

Out of curiosity, what is the motivation for ditching DateTimeOffset? I would assume it was something like this: http://stackoverflow.com/a/264643/8668

Because we are always storing UTC, so the use of it was not necessary. Oh yea, and we had lots of complaints about it.

OK. Thanks!


fix: ancestor-binding initial value type incompatibility

GitHub Issue (If applicable): closes #1218, closes #1219
PR Type
What kind of change does this PR introduce?

Bugfix

What is the current behavior?
AncestorBinding when used on non-reference type dp would cause a COMException. This is due to it returning null as initial default value, until the binding came online.
What is the new behavior?
The current value will now be returned, prevent this COMException.
PR Checklist
Please check if your PR fulfills the following requirements:

[x] Tested code with current supported SDKs
[x] Tested the changes where applicable:

[ ] UWP
[x] WinUI
[ ] iOS
[ ] Android
[ ] WASM
[ ] MacOS

[ ] Updated the documentation as needed:

[ ] General Doc Update
[ ] Controls Doc Update
[ ] Extensions Doc Update
[ ] controls-styles.md
[ ] lightweight-styling.md (LightWeight Styling Resource Keys)

[x] Runtime Tests and/or UI Tests for the changes have been added (for bug fixes / features) (if applicable)
[x] Contains NO breaking changes
[x] Associated with an issue (GitHub or internal)
[x] Commits must be following the Conventional Commits specification.

@mergifyio backport release/stable/6.1


peerDependicies not met on install

When trying to install karma and other tests, get the following errors:
npm ERR! peerinvalid The package karma does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>npm ERR! peerinvalid Peer<EMAIL_ADDRESS>wants<EMAIL_ADDRESS>It works by using 0.1.3 of the preprocessor, but I was wondering if there is another way to get them all installed? 0.1.3 breaks our build server

Should be fixed in the latest versions


tar_unknown_generation_error

I guess it's a similar issue like #158. Also, I have to run MIX_ENV=prod mix compile, as it's not invoked automatically.
This is my first attempt at deploying via exrm, so I might have missed something. I followed Phoenix docs.
 If not, can you run mix release.clean --implode --no-confirm, blow away _build and deps and then run mix deps.get && MIX_ENV=prod mix do compile, release? This error is coming from relx itself, and I'm not sure what's causing it, but the solution to this the last time it was seen was a clean checkout, so blowing away all the build/release artifacts should give us a clean slate.
You could also clone exrm-test and try to reproduce with that.

Doing that ends up with
{{case_clause,
     {'EXIT',
         {function_clause,
             [{filename,join,[[]],[{file,"filename.erl"},{line,393}]},
              {erl_tar,split_filename,4,[{file,"erl_tar.erl"},{line,471}]},
              {erl_tar,create_header,3,[{file,"erl_tar.erl"},{line,400}]},
              {erl_tar,add1,4,[{file,"erl_tar.erl"},{line,323}]},
              {erl_tar,foreach_while_ok,2,[{file,"erl_tar.erl"},{line,1000}]},
              {systools_make,add_to_tar,3,
                  [{file,"systools_make.erl"},{line,1879}]},
              {systools_make,add_appl,7,
                  [{file,"systools_make.erl"},{line,1750}]},
              {systools_make,'-add_applications/5-fun-0-',6,
                  [{file,"systools_make.erl"},{line,1569}]}]}}},
 [{systools_make,'-add_applications/5-fun-0-',6,
      [{file,"systools_make.erl"},{line,1569}]},
  {lists,foldl,3,[{file,"lists.erl"},{line,1262}]},
  {systools_make,add_applications,5,[{file,"systools_make.erl"},{line,1568}]},
  {systools_make,mk_tar,6,[{file,"systools_make.erl"},{line,1562}]},
  {systools_make,mk_tar,5,[{file,"systools_make.erl"},{line,1538}]},
  {systools_make,make_tar,2,[{file,"systools_make.erl"},{line,336}]},
  {rlx_prv_archive,make_tar,3,[{file,"src/rlx_prv_archive.erl"},{line,83}]},
  {relx,run_provider,2,[{file,"src/relx.erl"},{line,308}]}]}

I noticed it doesn't happen with new project. I am now trying to copy parts of my project into new one and trying to do release on each step to isolate what is causing the relx to break.

Incredibly, it has to do with assets.
Here is the script I use to build everything:
mix deps.get --only prod
MIX_ENV=prod mix compile

brunch build --production
MIX_ENV=prod mix phoenix.digest

MIX_ENV=prod mix release

If I wipe out web/static/assets and priv/static, it will make the release. However, once I copy my assets into web/static, it will fail with the error I mentioned earlier.

@dbulic Sorry I'm just getting back around to this!
I haven't heard anyone else using exrm with phoenix have issues with assets, I'm wondering if perhaps there is something specific to the files being put in web/static. Do you still have this issue? Could you run tree web/static and paste the output here? If you don't have tree installed, it should be available via your package manager (brew install tree was how I installed it myself)

Thanks for getting back to me!
However, I don't have the problem anymore - I simply copied files to a new project few at a time until I reached a point where it fails, so I stopped there. Don't have the old directory, so can't help you reproduce the issue.
I think it's best just to close this issue. If someone stumbles upon same problem, hope you'll have enough info to repro it.

@dbulic I got exactly the same problem as you in #299
But I am not running a phoenix project.
I am going to try to copy the project pic by pic like you and find the root cause

@dbulic @mingchuno I think this is because of long filename/filepaths.  I'd need to test to be sure, but I saw some of your module names in your tree output, and was surprised at how long they were. I wouldn't be surprised if that's what is causing the error in both issues.

Yeah, I don't like the long module names, but they map to the nested structure of the json I'm getting returned to me.


Udemy Says : 403 Forbidden You should use cookie base method to authenticate or try again in few minutes ...

Hello,
when I use command: python udemy-dl.py https://www.udemy.com/course/crowdtesting/
to download the course I get this error: Udemy Says : 403 Forbidden You should use cookie base method to authenticate or try again in few minutes ...
Could you please help me to download this course?

@rus4u this issue is created so many times and the error is clearly saying either use cookie based method or wait, so use the cookie based method you can take a look at readme file.


Explore using expo components in vanilla react native project

Is this ticket still valid?

It is is working without expo, we may revisit if there is a need


Product Reviews not activated

Can you reproduce this issue on default Wordpress theme (eg Storefront)?
Yes
Can you reproduce this issue when all other plugins are disabled except WooCommerce, Polylang and Hyyan WooCommerce Polylang Integration?
Yes
What product versions and settings are you using when this issue occurs?

PHP:
WordPress: 5.8.1
WooCommerce: Version 5.9.1
Polylang:  3.1.1
Hyyan WooCommerce Polylang Integration: Version 1.5.0
Browser: Google chrome

Steps to Reproduce

Go to product
Go to the advance tab
Enable product review
Go to the 2nd language product
try enabling the product reviews using step above

What I Expected
The "enable review" is greyed out.
What Happened Instead
Nothing.
Good day! I just wanted to point out that when we checkmark “Enable product reviews” in the advance tab in the primary language it does not enable it in the 2nd language resulting in not having reviews displayed in the 2nd language.
The only way to enable review in the other language is to disable Hyyan WooCommerce plugin. Then checkmark the “Enable review” and then the reviews will be displayed.
Screenshot: https://prnt.sc/1tzp1jm

make sure Comment Status synchronisation is turned  on under Languages, Settings, Synchronisation at:
/wp-admin/admin.php?page=mlang_settings
(Reviews are a type of comment basically)
then it should work.
Also, it's highly recommendable to use 1.5.1 as per https://github.com/hyyan/woo-poly-integration/releases


Merge pull request #11 from PrestaShop/dev

error 500 when enable the module.
just change in the ps_viewedproduct.php at the start of the file the line
use PrestaShop\PrestaShop\Adapter\Presenter\Product\ProductListingPresenter;
to
use PrestaShop\PrestaShop\Core\Product\ProductListingPresenter;

Thanks to @Matt75 we have a Pull Request that follows these guidelines 😉 : https://github.com/PrestaShop/ps_viewedproduct/pull/13
So I close this one


Cascade parent parameter and method data

This PR modifies how GenerateExport and GenerateSanitizedExport function to support cascading data from parent methods that are overriden in subclasses.

If useBlackstone is true, then each class will have all its methods checked for parent methods. If a parent method exists and has mapping data, it will be cascaded to the subclass method if the subclass method does not override the mapping data with its own.
With this PR, one could theoretically map only a single parameter or only javadocs that changes in a subclass method from its parent class, and the export do the rest of the work filling in from the parent.
The useBlackstone Gradle property has been moved up to GenerateExport to support this new cascading in both normal and sanitized exports

Sorry we only accept PRs from Prawns not Shrimp.
No offence


wait-zookeeper-ready init container OOM killed

Describe the bug
The broker and proxy pods does not start, because their wait-zookeeper-ready init container OOM kills the zookeeper client.
To Reproduce
Steps to reproduce the behavior:

A working Kubernetes Cluster with a pulsar 2.10.x
Configure a few topics and subscriptions
Send messages through pulsar
Then upgrade to 2.11.x or 3.0.0
Everything starts as expected, beside the broker and proxies
The log of the broker/proxy states repeatedly

pulsar cluster <cluster-name> isn't initialized yet ... check in 3 seconds ...
Killed

However, the zookeepers are up and running
Expected behavior
The zookeeper client in the wait-zookeeper-ready init container is not OOM killed but works correctly
Additional context
The problem is, that for the zookeeper client, the args -Xms2g -Xmx2g -XX:MaxDirectMemorySize=2g are set.
However, the init container does only have 512mb memory.
In detail:

The wait-zookeeper-ready init container calls bin/pulsar zookeeper-shell -server <cluster-name>-zookeeper get /admin/clusters/<cluster-name> (proxy) or bin/bookkeeper org.apache.zookeeper.ZooKeeperMain -server <cluster-name>-zookeeper:2181 get /admin/clusters/<cluster-name> (broker)
The bin/pulsar or bin/bookkeeper script calls bkenv.sh (https://github.com/apache/pulsar/blob/3eadbc3a437b84a0a04fc926c268c4003feda81e/conf/bkenv.sh#L38) to prepare the JVM arguments
The bkenv.sh (line 38) sets the arguments for 2g of memory: BOOKIE_MEM=${BOOKIE_MEM:-${PULSAR_MEM:-"-Xms2g -Xmx2g -XX:MaxDirectMemorySize=2g"}}
At startup, the JVM of the zookeeper client tries to allocate around 1.7g of memory and is OOM Killed by the init container operating system.

Workaround
Use a helm post-renderer and add export BOOKIE_MEM="-Xms256m -Xmx512m -XX:MaxDirectMemorySize=512m"; to the args of the wait-zookeeper-ready container
Intention
Please fix the helm-chart in some way, that the zookeeper client is not called with the args -Xms2g -Xmx2g -XX:MaxDirectMemorySize=2g

Thanks for your report!
This seems an issue of the Helm Chart and we have https://github.com/apache/pulsar-helm-chart/issues/124 for it. Let's discuss there - nothing can be done in the main repo for this case.

Sorry. I misread the repo. This is exactly where we should handle it. You can submit a PR and ping me for review - I may not have enough time recently to work out a solution.


SyntaxError: Unexpected token import - ??

How I can see this on fronted? and what I need to config?

hey @ruslankonev v1.18.2 should have fixed this for you as it exposes a UMD es5 bundle file as opposed to the component src. Give that a try and let me know. If it doesn't solve your issue, i'll re-open it.
closing for now.


Remove auto approve from api

API consumers shouldn't have access to this knowledge, this should be strictly on the wallet side.
Why? Today I was investigation a couple of phishing websites, and both of them check if the user has auto approved or not.
Both were acting differently, but both were abusing this information.

The adapter only exposes the state of the wallet. If a dapp wants to abuse autoApprove, they can detect it from the wallet extension directly anyway.
I agree generally that wallets should remove this feature. The limited purposes it solves for traders on trusted dapps is not worth average users losing funds to scams.
I'll check in with the wallet providers that have this feature, as I believe some of them are already phasing it out.

Yeah, I figured so, but both cases were using the adapter and decided to start here.
I thought that wallets could still auto-approve without telling the app it is auto-approving?
I'm against removing the feature, but it shouldn't be easily accessible to people who don't know what they're doing. Beyond the UX question, my issue really is the apps being able to know if the wallet is doing auto or not, and then having different behaviors trying to force the user to use auto approval.

I thought that wallets could still auto-approve without telling the app it is auto-approving?

Maybe they can, but the ones that have the feature expose it on their interface.

I'm against removing the feature

I'm not, and wallet providers seemingly aren't. It's likely to be removed because it encourages a broken security practice.

The use of this pattern derives from https://github.com/project-serum/sol-wallet-adapter/blob/be3fb1414425dc8ae64d67599d677f9acc09fe4c/src/index.ts#L163-L165
Most wallets don't actually have this feature, and we don't think it's a good idea, so we should drop it.

Its a move in the right direction, should prevent things like this from happening

Yikes, is that real code from one of these malicious dapps?

Yes. Another was doing even worse, with specific prompts to ask the user to refresh and select auto-approve.

Woof. Thanks for that. So they are actually just detecting it on window.solana which means they aren't checking the adapter state at all then.
I'm all for removing this once we have buy in to hide it from Phantom at least.

Whether or not they remove the feature, they should definitely remove the info from their adapter and most importantly the wallet shouldn't expose that info.
Can you reach their team with this? Hopefully we get a fix asap, as these scams seem to be more common by the day.

I'm in contact with Phantom and Solflare and I'm working on removing it from wallet-adapter now.

Cool. Thank you

This is a breaking change (can at least break TypeScript in dapps) but I think it's important to make.

Published:

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>


WIP Fix some persistent integration test failures

I rule and have completed some work on Case Manager that's ready for review!
WIP PR to fix pull request failures as they choke up our builds. I think most of these can be fixed with some good old waiting.

Codecov Report

Merging #879 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #879   +/-   ##
=======================================
  Coverage   97.98%   97.98%
=======================================
  Files          35       35
  Lines         743      743
=======================================
  Hits          728      728
  Misses         15       15

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 149f0a4...d627b3c. Read the comment docs.

Good for now, but to be continued I think!


For a 0.1.0 release

Codecov Report

Merging #1 (3bd8ef6) into master (155334c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #1   +/-   ##
=======================================
  Coverage   31.96%   31.96%
=======================================
  Files           1        1
  Lines         122      122
=======================================
  Hits           39       39
  Misses         83       83

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 155334c...3bd8ef6. Read the comment docs.


add per pod quote server to quote server of CCNP

Add per pod quote server to quote server of CCNP. This PR adds a per pod quote server for current K8s pod in K8s cluster, below are the details:

Add a new file: kube.rs and create kube-client for getting K8s pod information
Generate quote data of the Pod which is running with the quote-server container
All image IDs of the pod’s containers are part of the quote data
Provide a HTTP API for fetching the quote data in localhost:3000/quote

@zhlsunshine thanks for the PR and here are some comments:

in CCNP implementation, we adopt the backend+SDK pattern, SDK will talk locally to backend service via UDS(Unix Domain Socket) which will enhance the security, pls follow this pattern in the usage
for the backend, it is more clear that we only provide one UDS access point than one more http access point and current golang and python SDK can be enhanced to provide image information as user data while backend server remains unchanged
the golang quote server SDK is at https://github.com/intel/confidential-cloud-native-primitives/tree/main/sdk/golang/ccnp/quote

@zhlsunshine thanks for the PR and here are some comments:

in CCNP implementation, we adopt the backend+SDK pattern, SDK will talk locally to backend service via UDS(Unix Domain Socket) which will enhance the security, pls follow this pattern in the usage
for the backend, it is more clear that we only provide one UDS access point than one more http access point and current golang and python SDK can be enhanced to provide image information as user data while backend server remains unchanged
the golang quote server SDK is at https://github.com/intel/confidential-cloud-native-primitives/tree/main/sdk/golang/ccnp/quote

Hi @hairongchen, thanks for your replying, I reverted the code and make the quote-server the same as before, and I also add an extra  pod-quote folder for per pod quote, including the Dockerfile in directory container/pod-quote and pod-quote-deployment.yaml in directory deployment/manifests for pod-quote. Please help to review it again. Thanks!


a question

is your code only for detection and not for classification

The classification part in in ./Classification. The repo is for demo only.  Just as the descriptions in the paper, we perform the task at three step: traffic sign detection as one class, localization refinement, and traffic sign classifications.


Typo with Dependency path name

Document references the path .python-packages which is incorrect.
Change to .python_packages
Path was misleading and caused confusion.

@ggailey777
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Overriding default keymaps doesn't seem to work

I'm somewhat new to remapping in Atom, so I may be forgetting something, but based on reading the Atom documentation I think I did everything.
I'm trying to remap the autocomplete-plus:confirm command to the enter key, but I can't seem to get it working. In my keymap.cson file, I have tried:
'.autocomplete-plus':
  'enter': 'autocomplete-plus:confirm'

'.autocomplete-plus input.hidden-input':
'enter': 'autocomplete-plus:confirm'

but neither seem to allow me to press enter instead of tab. Is there something I'm missing?

With the latest update, this worked for me
'.autocomplete-plus':
  'tab': 'unset!' # optional
  'enter': 'autocomplete-plus:confirm'

Please see: https://github.com/atom-community/autocomplete-plus/blob/master/README.md#usage


[Feature] Update ClashMetaforAndroid to Use the Latest ClashMeta-Meta Kernel

Verify steps

[X]  我已经在 Issue Tracker 中找过我要提出的请求 I have searched on the issue tracker for a related feature request.
[X]  我已经仔细看过 Documentation 并无法找到这个功能 I have read the documentation and was unable to solve the issue.

Description
The ClashMeta-Meta kernel has recently released a new version. We kindly request an update for ClashMetaforAndroid to incorporate this latest kernel.
Additionally, we recommend implementing daily automatic releases for ClashMetaforAndroid using the ClashMeta-Alpha kernel.
Thank you for your attention to this matter.
Possible Solution
No response

https://github.com/MetaCubeX/ClashMetaForAndroid/actions

CMFA’s Prerelease-alpha doesn't have the lastest apk file.

Please go to the Actions page of cmfa to retrieve.


Avoid modification on possibly frozen string

Most users are defining option description with string literal. Starting from ruby 2.3, rubocop starts advocating to set # frozen_string_literal: true magic comment.
Before this patch, this would raise an error related to modification of frozen string.

travis is angry but the fix looks correct.

Vote for this to be fixed!  :+1:

@kamaradclimber if you can get travis fixed up on this one, we'll get it merged!

It took me a while to get back to this but here it is with spec fixed.

Thanks!