Can't activate file selection rectangle with pen and touch

Is your feature request related to a problem? Please describe.
Currently, there is no way to activate the selection rectangle with a digital pen or touch.
Describe the solution you'd like
A clear and concise description of what you want to happen.
I think there are two things that should be added:

To align with the selection behavior of UWP, Office, and Edge apps, I think holding down the side button on a digital pen and dragging should activate the selection rectangle.
There should be a way to activate the selection rectangle with touch, like a button or pressing and holding in the margin.

Describe alternatives you've considered
Another solution is to copy the current behavior of Windows Explorer, where any pen input activates selection. I do not believe Files should copy this behavior, as it is consistent with the behavior of most apps. However, since it is the default in Windows explorer, it may be worth adding an option to switch between the two.

@gave92 I believe you had some ideas on this.

Selection rectangle was disabled on touch as it was causing issue with the drag-to-scroll gesture.
We can either find a way to trigger it which does not cause this issue or use a different approach for multiselect on touch (e.g. a toggle for multiselect where check boxes are shown on the items corner)

@gave92 I think the way Windows Explorer does it currently is pretty good (although laggy), where you can touch and hold in the margin, then drag to select. In my experience, it doesn't interfere with scrolling or the context menus too much.

@gave92 I think the way Windows Explorer does it currently is pretty good (although laggy), where you can touch and hold in the margin, then drag to select. In my experience, it doesn't interfere with scrolling or the context menus too much.

@winston-de do you want to work on this issue?

Sure

Hey, just wanted to come here, because I find the ux selection of elements with touch quite poor in Files, since I need to make two clicks to simply select something. Making the selection rectangle work with touch like in File Explorer would be great

@winston-de it looks like we can use the Manipulation events to support pen and touch. This will also pave the way for additional gestures.

throwing in this proof of concept for an alternate form of ink-like pen gestures I made a while back. #5143

throwing in this proof of concept for an alternate form of ink-like pen gestures I made a while back. #5143

I approved the feature request, it's been a while and there will be probably be conflicts but do you still have code? I'd love to get this included in v2.3.

It's been a while, I'll see if I can dig it up.

We would like to support this in the future, but as of now we don't see a way to implement it without affecting the other gestures. On a side note, the multiselect behavior is a lot better than when this issue was originally opened.


Multiple calls to enqueueLinks with Promise.all result in a crash

Which package is this bug report for? If unsure which one to select, leave blank
None
Issue description
Executing the snippet below results in the following error:
Error: Lock file is already being held
    at /home/janbuchar/Projekty/Apify/enqueue-links-crash-repro/node_modules/proper-lockfile/lib/lockfile.js:68:47
    at callback (/home/janbuchar/Projekty/Apify/enqueue-links-crash-repro/node_modules/graceful-fs/polyfills.js:306:20)
    at FSReqCallback.oncomplete (node:fs:205:5)
    at FSReqCallback.callbackTrampoline (node:internal/async_hooks:130:17)

Also, it's strange that the traceback doesn't lead to user code.
Code sample
import { CheerioCrawler, PlaywrightCrawler } from 'crawlee';

const startUrls = ['https://warehouse-theme-metal.myshopify.com/collections'];

const crawler = new CheerioCrawler({
    requestHandler: async ({request, enqueueLinks, parseWithCheerio}) => {
        const $ = await parseWithCheerio()
        console.log(`Processing ${request.loadedUrl}`)
        const urls = $('a.collection-block-item, a.pagination__next, .product-item > a').toArray().map(it => it.attribs['href'])
        await Promise.all(urls?.map(url => enqueueLinks({urls})))
    },
    maxRequestRetries: 0,
    maxConcurrency: 1,
});

await crawler.run(startUrls);

Package version
3.7.3
Node.js version
v21.6.1
Operating system
Linux
Apify platform

[ ] Tick me if you encountered this issue on the Apify platform

I have tested this on the next release
No response
Other context
No response

I know that the reproduction example is a very bad use of the method. I made it this way to make the code crash deterministically.

Same here, not sure where to look for the problem... seems like a missing try/catch or a improperly handled rejection.

Hey @janbuchar, why is this a bad use of the method? I'm running into a similar error.

Hey @janbuchar, why is this a bad use of the method? I'm running into a similar error.

It calls enqueueLinks with the complete set of URLs for each URL in the set. The correct approach would be calling enqueueLinks once, with a selector.
Even though it's bad usage, it uncovered a bug that's worth fixing, which is why I put the sample here.

Encountering same issues on 3.11.3 as well.
 Error: Lock file is already being held
crawler   |     at node_modules/proper-lockfile/lib/lockfile.js:68:47
crawler   |     at callback (node_modules/graceful-fs/polyfills.js:306:20)
crawler   |     at FSReqCallback.oncomplete (node:fs:198:5)
crawler   |     at FSReqCallback.callbackTrampoline (node:internal/async_hooks:130:17)

crawler   |   code: 'ELOCKED',
crawler   |   file: '/storage/key_value_stores/default/SDK_SESSION_POOL_STATE.json'

Encountering same issues on 3.11.3 as well.
Hi @mbrys0n, could you please share the code that triggers the crash as well?

Think was a different cause sorry @janbuchar but with the same symptom. Posting here in case others encounter:
Aforementioned was caused by running concurrent crawler instances. We resolved by assigning separate sessionPoolOptions: { persistStateKey} giving them separate files.
Seems crawler instances will compete by default for the session pool file, leading to a race condition on locking the state. In our case this led to intermittently exceeding the ~10 second lockout timer here:
https://github.com/apify/crawlee/blob/5db533afdb70eec98b077262ecfcb8efea89978b/packages/memory-storage/src/background-handler/fs-utils.ts#L68-L85


python3 compatibility, better command line options

This commit adds support for python3, and also makes the config file location configurable

I'm having a cleanup of open PRs on my repositories. I'd be very happy to look at this again if it were cleaned up (address review comments, remove WIP commits, etc.) but for now I'm going to close this. Feel free to reopen if you get a chance to update it!


Resource is missing from strings GCM

For GCM project the following resource R.string.gcm_defaultSenderId is missing from strings file.

The R.string.gcm_defaultSenderId is inserted by the google services plugin at build time. If you build the project you will find it in build/generated/res/google-services/debug/values/values.xml


Feat/default lookup services consumer groups

Feat/default lookup services consumer groups
Require: https://github.com/Kong/go-database-reconciler/pull/130
Similar changes to: https://github.com/Kong/deck/pull/1173
PR: https://konghq.atlassian.net/browse/FTI-6181

@AntoineJac Could you take a look at the failed checks and conflicts here please?

@Prashansa-K , the PR need first to be merged before: https://github.com/Kong/go-database-reconciler/pull/130
Also I have not included yet the tests to this PR.

@AntoineJac Could you now merge the other PR and add the required tests here please? The other PR is approved.

For info test will fail untils this PR is merged:
https://github.com/Kong/go-database-reconciler/pull/130

Codecov Report
Attention: Patch coverage is 0% with 73 lines in your changes missing coverage. Please review.

Project coverage is 29.16%. Comparing base (74b1859) to head (87332a8).

Files with missing lines
Patch %
Lines

cmd/common.go
0.00%
50 Missing :warning:

cmd/gateway_validate.go
0.00%
23 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1367      +/-   ##
==========================================
- Coverage   29.52%   29.16%   -0.36%
==========================================
  Files          59       59
  Lines        5138     5211      +73
==========================================
+ Hits         1517     1520       +3
- Misses       3512     3583      +71
+ Partials      109      108       -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Infinite loops happening without logs

Hello there ! I'm opening an issue here as I wasn't able to find a solution on the mode l've been using in itself, and I am not sure it's related to it...
The model I use is https://replicate.com/thomasmol/whisper-diarization
Working perfectly for several months, no issues with that. But recently, for a reason I cannot find, I find myself with predicts that go in infinite loops, without logs nor warnings, and obviously cost me quite a lot (sometimes looping for one or two hours before I notice it...).
I just had one with the prediction ID 0e120sfsasrgp0cffm4bvtnb5c
By any chance, could someone help me identify if there may be something wrong on the Cog side that creates this behavior ?
Best regards,

Hi @MaximeDde. Sorry that you're having problems with this model.
thomasmol/whisper-diarization is a community model by a Replicate user. I noticed that several new versions were pushed in the last few months, so if your code was running the latest version, that could explain the changes you observed. If you pin to a specific version SHA, that should ensure consistent behavior.
It looks like the source code for the model is available here. So if you wanted to make any other changes, you could push your own version and use that instead.


Feature Request: Code Completion for Android Studio Flutter Modules

Use case
Code completion is very helpful for development and should be supported for Flutter Modules in Android projects in Android Studio.
Currently, code completion for Flutter Modules in Android Studio does not work.

Code completion works correctly in a Flutter project:

After creating a new Flutter Module in an existing Android project, it would be helpful to have code completion for the Flutter code.
Proposal
Enable Android Studio to detect dart files and enable autocompletion on those files.
Prior Work
Autocompletion for Java code in a Flutter project was enabled in #9698 and #17692
Would be nice to have it work the other way around too!

#Solution
Enabling Dart support enables autocompletion. 🎉


Wrong link for the hybrid connector

[Enter feedback here]
The right link for the Dynamics 365 hybrid connector is https://portal.office.com/signup/logout?OfferId=2d11d538-945d-48c6-b609-a5ce54ce7b18&pc=76ac7a4d-8346-4419-959c-d3896e89b3c9
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: d4a7165a-d7a7-fecd-3260-f6be07a6f331
Version Independent ID: aa92c5c1-3e94-ae45-5e0c-8d5edd4f4f5f
Content: Connect Exchange Online to Dynamics 365 Customer Engagement (on-premises)
Content Source: ce/customerengagement/on-premises/admin/connect-dynamics-365-on-premises-exchange-online.md
Product: d365ce-op
GitHub Login: @Mattp123
Microsoft Alias: matp

@karimrios - The link in the article directs me the Hybrid Connector sign up page as expected. Can you explain why the link should be replaced with the one you've indicated in this issue?


Do not try to delete idle providers if no runner label match

There was no label match, yet the state machine still waits to reap idle providers. No real harm here, but I think it'd be more optimized if it didn't wait in the cases where there was no match.
In fact, ideally, I think this selection should as early as possible.

Agreed but I'm not too sure how to implement that yet. If anyone has any ideas, I'm happy to hear or accept PRs for this.

Another problem with the current logic is the new retry attempts. Technically the provider can retry for up to an hour. That means the idle runner logic can execute before the runner even started. That means it can get into a situation where it doesn't even delete idle runners.


WL-5181 Add common cartridge export facility to resources.

Committing as this is working (apart from links with spaces in HTML pages) and I'm on holiday for a bit.  The method relFixup probably needs work, I'm still not entirely sure what it is trying to achieve.

@wl-jenkins retest this please

@wl-jenkins retest this please

I've changed the while (true) loops Matthew.


ci: adjust mergify Automerge label to merge when CI passes and >= 2 approvals

Background
Currently, "A:Automerge" label merges when CI is still in-progress and might fail. Additionally, it only requires 1 approval.
Suggested Design
Follow the instructions in https://docs.mergify.com/conditions/#about-status-checks to add status checks for tests and lint jobs:
https://github.com/osmosis-labs/osmosis/blob/38419628d8bbfadf55be32ff622e59a398c28915/.github/mergify.yml#L13-L17
Change approved reviews from 1 to 2.
Additional Context
I've run into issues trying to match our CI job names while testing the approach for "check-success". It would be useful for the person working on this to have access to the mergify dashboard to debug.
Acceptance Criteria

suggested changes implemented
tested that the changes work on a personal fork

Hi, I am working on this, but I can't set up a mergify test for it in the forked repo. I have to add name jobs individually because mergify doesn't allow checking multiple statuses with just one condition. We also need to change the setting in the "branch protection rules" section and modify mergify file as I suggested: https://github.com/notional-labs/osmosis/blob/main/.github/mergify.yml
this is my testing pull request that I am working on: https://github.com/notional-labs/osmosis/pull/71


Spelling suggestions look weird after #158

This happens on e63d976929c73f48bd7d05a932aa188d6e94e080 and doesn't happen on bef454eecc11fb13e5bc3f29f443f495904470ef

Can confirm.

This problem is very important.


Block edge 4.5.28

4.5.28 needs to be disabled:
3 clusters currently failing (12%),  3 gone (12%),and 12 successful (46%), out of 26 who attempted the update over 7d
Currently failing classification:
* Down nodes: 2
* SDN issue: 1
* Single master: 1
* Version retarget: 1

4.5.28 needs to be disabled:
3 clusters currently failing (12%),  3 gone (12%),and 12 successful (46%), out of 26 who attempted the update over 7d
Currently failing classification:
* Down nodes: 2
* SDN issue: 1
* Single master: 1
* Version retarget: 1

4.5.28 needs to be disabled:
3 clusters currently failing (12%),  3 gone (12%),and 12 successful (46%), out of 26 who attempted the update over 7d
Currently failing classification:
* Down nodes: 2
* SDN issue: 1
* Single master: 1
* Version retarget: 1

4.5.28 can be enabled again:
2 clusters currently failing ( 4%),  2 gone ( 4%),and 40 successful (85%), out of 47 who attempted the update over 7d
Currently failing classification:
* Down nodes: 1
* SDN issue: 1
* Version retarget: 1

4.5.28 can be enabled again:
2 clusters currently failing ( 4%),  2 gone ( 4%),and 40 successful (85%), out of 47 who attempted the update over 7d
Currently failing classification:
* Down nodes: 1
* SDN issue: 1
* Version retarget: 1


Bug fix #50

Fixes #50
Changes
In the index.js updated the button content to "Sound: Off"

please make this PR to the development branch.

please make this PR to the development branch.

Done

Thanks for your contribution.


Optionally use fallback source on zero matches

Feature Description
Sometimes the LSP will return a few results (i.e. snippets) that aren't relevant to the completion context, such as in comments. We should optionally allow for the fallback source to be triggered when none of the completion items match the current keyword

Deciding against implementing this, it would require too much refactoring and seems generally niche


Azure AD B2C Javascript SDK

Hi All,
Azure AD B2C seems to have several issues with the way default UI is layout. E.g. when using ForgetPassword the labels are missing and we are unable to change logo in the left side of Forget Password page.
Also, on Login Page we want to hide password on click of a checkbox and have a button named Single Sign-On when checkbox is clicked (can be achieved by Javascript) which will take users to own IDP Login for Sign-On. But, what should we do on click of Single Sign-On button is not known. When we add a Custom IDP, we are not sure how to position this Custom IDP button and rename it in our UI beside the Sign-In button.
There is no step by step documentation available to do such Customization.
Alternately, is there a Javascript (preference is react js component) like aws-amplify which we can use which will allow us to create our own login UI / Forget password etc pages within our own application like here http://cognito.dbroadhurst.net/#/landing (click signin on this page and instead of taking you to AWS login, it shows a custom ReactJS UI loaded within the same Application unlike ADB2C hosted Custom page with different Url like b2clogin.com) and we can call a2bc.login() or a2bc.forgetpassword to call correct API?
Is there a documentation describing such an interaction via Javascript or ReactJS?
Thanks,
Ashish

@ashishmundrajll Thank you very much for bringing this to our attention. We are investigating and will update this issue when we have accurate information.

Hi Ashish,
Thank you very much for your suggestions. I am bringing this to the attention of @parakhj and @rojasja  from the B2C team.
The best place to post this feedback is on User Voice, since that is where the product team can directly take your feedback and put it into their backlog. https://feedback.azure.com/forums/169401-azure-active-directory?category_id=160596

We will proceed to close this thread. Please post your comments to User Voice so the product team can address them there.


Improve public JavaScript API for code initialisation

This PR aggregates the work to offer new features in our JavaScript public API around code initialisation:

adding a isSupported function to check if GOV.UK Frontend is supported outside of components
allowing createAll to initialise external components
offering a Component class to extend when building your own components

See the list of PRs merged on its branch for more details.

We've reviewed and approved the individual PRs that make this branch.


Fix for when used as dependency through npm

As part of the build process all the source files would be bundled into a single file. However, all this does is concatenate the files after compilation.  This causes the exports definitions to clash and the intermodule require calls to not work.
Instead, this change builds each separate module and places them inside the dist folder, not unlike the dev script. With the main property of the package.json also pointing there the module can now be required without errors.
const signalArr = require('signal-arr')

Bonus: publishing each module individually allows to only include a single module.
const hubClient = require('signal-arr/dist/HubClient')

// or

const ConnectingMessageBuffer = require('signal-arr/dist/ConnectingMessageBuffer')

For convenience I also added a prepublish script to the package.json, making sure the build is always run just before publishing to npm.

The tests seem to fail because the server can't be reached.


Enable combiner lifting for the Group transform

R: @slavachernyak
Note: for Dataflow users, this change will block update. In order to update a use of Group.byFieldNames from before this change, the user must explicitly disable this new behavior by calling withPrecombining(false).

run java precommit

Run RAT PreCommit

Run Java_Examples_Dataflow

Run Java PreCommit


Cannot pickle the result of SciPy linear regression

Although linregress returns a regular namedtuple, it is not pickleable:
import pickle
import numpy as np
from scipy import stats

x = np.arange(0, 10, 0.4)
y = 2 * x + np.random.uniform(size=len(x))
result = stats.linregress(x,y)

pickle.dumps(result)

gives
PicklingError("Can't pickle <class 'scipy.stats._stats_mstats_common.LinregressResult'>: attribute lookup LinregressResult on scipy.stats._stats_mstats_common failed"
One issue this causes is making it impossible to use in with multiprocessing in joblib ( see https://github.com/joblib/joblib/issues/477), since the regression results cannot be sent back from workers.
I believe this may be caused by the LinregressResult being defined inside the linregress function instead of at the module level.

from scipy.stats._stats_mstats_common import LinregressResult

although LinregressResult is defined in scipy/stats/_stats_mstats_common.py: https://github.com/scipy/scipy/blob/3e2351538d7871641b700c998500a1664e5ebb69/scipy/stats/_stats_mstats_common.py#L10.
It does ring a bell that this kind of things can happen when you have circular imports ...

It's probably already fixed only on master, but not in released versions.

It's probably already fixed only on master, but not in released versions.

Fixed in master indeed. It did not occur to me that I was looking at the source in master and testing on the released version ...

Indeed, it's fixed in master, so closing. Thanks for the report @mangecoeur , @lesteve
In [1]: import pickle

In [2]: import scipy

In [3]: scipy.__version__
Out[3]: '0.19.0.dev0+d2a8637'

In [4]: from scipy.stats import linregress

In [5]: r = linregress([1, 2, 3], [4, 5, 6])

In [6]: pickle.dumps(r)
Out[6]: "ccopy_reg\n_reconstructor\np0\n(cscipy.stats._stats_mstats_common\nLinregressResult\np1\nc__builtin__\ntuple\np2\n(cnumpy.core.multiarray\nscalar\np3\n(cnumpy\ndtype\np4\n(S'f8'\np5\nI0\nI1\ntp6\nRp7\n(I3\nS'<'\np8\nNNNI-1\nI-1\nI0\ntp9\nbS'\\x00\\x00\\x00\\x00\\x00\\x00\\xf0?'\np10\ntp11\nRp12\ng3\n(g7\nS'\\x00\\x00\\x00\\x00\\x00\\x00\\x08@'\np13\ntp14\nRp15\ng3\n(g7\nS'\\x00\\x00\\x00\\x00\\x00\\x00\\xf0?'\np16\ntp17\nRp18\ng3\n(g7\nS'R\\x06\\xbd\\xb0i\\xbf\\xd8='\np19\ntp20\nRp21\ng3\n(g7\nS'\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00'\np22\ntp23\nRp24\ntp25\ntp26\nRp27\n."

In [7]: rr = pickle.loads(pickle.dumps(r))

In [8]: rr
Out[8]: LinregressResult(slope=1.0, intercept=3.0, rvalue=1.0, pvalue=9.0031631615710586e-11, stderr=0.0)

In [9]: rr == r
Out[9]: True

In [10]: r
Out[10]: LinregressResult(slope=1.0, intercept=3.0, rvalue=1.0, pvalue=9.0031631615710586e-11, stderr=0.0)


Show own user when sharing to zulip

Fixes : #5020

Also, could you say more about how you've addressed (or would like to address) this comment from Greg, especially his last paragraph here:
@gnprice said:

Oh, though also one pitfall to watch out for when implementing this is to just make sure that those two possibilities do produce the same result.

Thanks again! 🙂

So, I just notice that if I select myself and another person the message will not be sent to me!
The only case this works is if the user selects only himself to share the file with.
I will investigate more.


Carbon diffForHumans function returning wrong string

Laravel Version:  8.52.0
PHP Version: 7.3.29
Database Driver & Version: 10.4.20-MariaDB (XAMPP 7.3.29-1-VC15)

Description:
diffForHumans() function returning string "ago" when parsing any date.
Even Carbon::now()->diffForHumans() returning the same ("ago").
public function timestamp()     {         return Carbon::parse($this->created_at)->diffForhumans();     }
Steps To Reproduce:
Carbon::now()->diffForhumans();
Tested with both dd and return.
P.S: It was working fine before I moved the project to a newer machine.

Carbon::parse($this->created_at)->diffForhumans(now());

Hi there,
Thanks for reporting but it looks like this is a question which can be asked on a support channel. Please only use this issue tracker for reporting bugs with the library itself. If you have a question on how to use functionality provided by this repo you can try one of the following channels:

Laracasts Forums
Laravel.io Forums
StackOverflow
Discord
Larachat
IRC

However, this issue will not be locked and everyone is still free to discuss solutions to your problem!
Thanks.


Use of tab-heading

Hi, you mention in the guide about using  in a custom template directive to control the tab heading itself. I am unsure how to go about doing this, can you provide an example?

Sure.  If you look at the source code you'll see it uses attributes.templateUrl as a default if it is present.  If you define templateUrl as a valid view, it will use that instead.  The default (embedded) template is at the bottom of the directive in ui-router-tabs.js.  Start with that and get it working, then modify to suit.

Basically, we have to specify the  element in our custom template right? We can't just make a directive for it and use it with the default template because that element isn't there. Correct?


Mail always marked as SPAM due to missing domain name

This issue tracker is only for issues related to EasyEngine. Please use http://community.rtcamp.com/c/easyengine for support questions.
If you feel the issue is a EasyEngine specific issue, please attach the output of the following commands.
System Information

[ ] ee cli info
[ ] lsb_release -a
[ ] docker version
[ ] docker-compose version

EE v4.0.9. Mail is always marked as spam. The default sender is www-data and the domain consists of the container id number pulled from the hostname.
root@ip-172-26-15-187:~# ee shell example.com
^_^[www-data@example.com:~/htdocs]$ php -r<EMAIL_ADDRESS>"Hello Human", "Hello from EasyEngine!");'

spf=neutral (google.com: <IP_ADDRESS> is neither permitted nor denied by best guess record for domain of www-data@a9b5fb5f7611)
smtp.mailfrom=www-data@a9b5fb5f7611
Return-Path: <www-data@a9b5fb5f7611>

Interesting I have noticed a lot of email going into SPAM but have not looked into it yet. Hopefully to do so soon.


GValue can be used to violate Send/Sync traits

E.g. you can store a gtk::Widget in a GValue and then send it to another thread. GValue is (and should be) Send, but it's content might not be.
A solution might be to have two kinds of Value, one Send and one not. And being able to transform from the Send one to the other, similar to TypedValue.

SendValue seems most reasonable, but not sure how to do this most painless. Code generator needs support for this too, so that Send type functions only allow SendValue.

Agree.

Let's also get this one fixed before the release then :) known safety issues are not fun

Working on it btw, not very focussed right now but adding a trait impl at a time to make things work without problems


562 - Privacy Policy Release Date Envar

Issue Number
Closing #562
The base branch of this PR is https://github.com/AlexsLemonade/scpca-portal/pull/566.
Purpose/Implementation Notes
I've created env vars  STAGE_PRIVACY_POLICY_RELEASE (for staging) and PRIVACY_POLICY_RELEASE (for production) to display the last updated date at the bottom of the Privacy Policy page.
NOTE 🗒:  For demo purpose, I temporarily edited the privacy-policy.md and made the Last Updated: 2021-11-03 line as a comment <!-- Last Update: ... -->  to match the latest format.sh implementation (*currently draft PR: format terms and conditions - let me know if any change, then I'll adjust the regex pattern in the helper).
Please see the latest UI here.
Types of changes

New feature (non-breaking change which adds functionality)

Checklist

[x] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in downstream modules

@davidsmejia  based on your 1:1 feedback, I've removed the regex and rendered the last updated date in the PrivacyPolicy page component at 27eaca054c0c6ae5844e21763a1c846f2aacee62 (please see the update details in https://github.com/AlexsLemonade/scpca-portal/pull/566#issuecomment-1971701189), and this PR is ready for another look.


Documentation generation missing paths

Since updating aide for axum 0.6.0-rc.5 compatibility the generation of the documentation seems to be broken. Specificially the "paths":{} section of the generated json is empty. Testing the example in the repository reproduces the issue:

I will look into the axum integration once it reaches 0.6.0 stable, I don't have the capacity to account for breaking changes between rc versions.
If anyone's interested in keeping the library in sync, fixes/PRs are obviously welcome!

I've just published the latest version that should be compatible with axum 0.6.0.


Fixes #436 Properties in RunningAqlQuery class should be PascalCase instead of lowerCase

Currently fails due to https://github.com/ArangoDB-Community/arangodb-net-standard/commit/ba458b762361aa7d0f07beb8184341500ae0ec12, but should be unaffected so will probably solve itself once that problem is sorted out.

Thanks @JLedel . This is technically a breaking change for consumers so I wonder if we should hold off merging it to master for now. We plan to create an intermediary 1.3.0 release with a bunch of enhancements, if so we don't want to introduce any breaking changes.
We want to group breaking changes together in a major release whenever possible.
Or maybe it's minor enough that we shouldn't treat it as a breaking change? The more we wait, the more people will use it 🤔
@tjoubert What do you think?

Currently fails due to ba458b7, but should be unaffected so will probably solve itself once that problem is sorted out.

Can you rebase your branch on master and push? So that we can see that the changes pass the CI checks.

Thanks @JLedel . This is technically a breaking change for consumers so I wonder if we should hold off merging it to master for now. We plan to create an intermediary 1.3.0 release with a bunch of enhancements, if so we don't want to introduce any breaking changes.
We want to group all breaking changes together in a major release whenever possible.
Or maybe it's minor enough that we should just get it in? The more we wait, the more people will use it 🤔
@tjoubert What do you think?
For now, I've added the breaking-change label for clarity.

@DiscoPYF , I agree. Let's group this along with the other breaking changes for a major release after 1.3.0. @JLedel , thank you for the contribution.

Currently fails due to ba458b7, but should be unaffected so will probably solve itself once that problem is sorted out.

Can you rebase your branch on master and push? So that we can see that the changes pass the CI checks.

Check and check!


error

`Error setting up entry for gardena_smart_system
Traceback (most recent call last):
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/requests/models.py", line 910, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/local/lib/python3.9/json/init.py", line 346, in loads
return _default_decoder.decode(s)
File "/usr/local/lib/python3.9/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/local/lib/python3.9/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/homeassistant/config_entries.py", line 335, in async_setup
result = await component.async_setup_entry(hass, self)
File "/home/homeassistant/.homeassistant/custom_components/gardena_smart_system/init.py", line 51, in async_setup_entry
await hass.async_add_executor_job(gardena_system.start)
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/homeassistant/.homeassistant/custom_components/gardena_smart_system/init.py", line 88, in start
self.smart_system.update_locations()
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/gardena/smart_system.py", line 209, in update_locations
response_data = self.__call_smart_system_get(f"{self.SMART_HOST}/v1/locations")
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/gardena/smart_system.py", line 180, in __call_smart_system_get
if self.__response_has_errors(response):
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/gardena/smart_system.py", line 159, in __response_has_errors
r = response.json()
File "/srv/homeassistant/venv_3.9.7/lib/python3.9/site-packages/requests/models.py", line 917, in json
raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
requests.exceptions.JSONDecodeError: [Errno Expecting value] : 0`

I get the same error, currently on HA 2022.3.6 and integration version 0.2.5b4:
`Logger: homeassistant.config_entries
Source: custom_components/gardena_smart_system/init.py:91
Integration: Gardena Smart System integration (documentation, issues)
First occurred: 11:36:25 (1 occurrences)
Last logged: 11:36:25
Error setting up entry for gardena_smart_system
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 910, in json
return complexjson.loads(self.text, **kwargs)
File "/usr/local/lib/python3.9/site-packages/simplejson/init.py", line 525, in loads
return _default_decoder.decode(s)
File "/usr/local/lib/python3.9/site-packages/simplejson/decoder.py", line 370, in decode
obj, end = self.raw_decode(s)
File "/usr/local/lib/python3.9/site-packages/simplejson/decoder.py", line 400, in raw_decode
return self.scan_once(s, idx=_w(s, idx).end())
simplejson.errors.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 335, in async_setup
result = await component.async_setup_entry(hass, self)
File "/config/custom_components/gardena_smart_system/init.py", line 53, in async_setup_entry
await hass.async_add_executor_job(gardena_system.start)
File "/usr/local/lib/python3.9/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
File "/config/custom_components/gardena_smart_system/init.py", line 91, in start
self.smart_system.update_locations()
File "/usr/local/lib/python3.9/site-packages/gardena/smart_system.py", line 217, in update_locations
response_data = self.__call_smart_system_get(f"{self.SMART_HOST}/v1/locations")
File "/usr/local/lib/python3.9/site-packages/gardena/smart_system.py", line 188, in __call_smart_system_get
if self.__response_has_errors(response):
File "/usr/local/lib/python3.9/site-packages/gardena/smart_system.py", line 162, in __response_has_errors
r = response.json()
File "/usr/local/lib/python3.9/site-packages/requests/models.py", line 917, in json
raise RequestsJSONDecodeError(e.msg, e.doc, e.pos)
requests.exceptions.JSONDecodeError: [Errno Expecting value] : 0`

Re-install of the app fix the problem afaik

Thanks! Deleting the app and recreating it at the Husqvarna Developer Portal solved it for me.


Antenna OSD order

Antenna glyph ordering confusing and changed to left to right 1, 2, 3, 4 when viewing goggles top down.

I'm not sure what you mean: "When viewing goggles top down"
Is it the order of the antenna from the perspective of the wearer when wearing the goggles? I hope so.
I recommend bumping up the graphic for the higher sma so it's clear which are which.

I'm not sure what you mean: "When viewing goggles top down"
Is it the order of the antenna from the perspective of the wearer when wearing the goggles? I hope so.
I recommend bumping up the graphic for the higher sma so it's clear which are which.


Errors cross compiling go-yara

I am trying to cross compile go-yara for x86 and x64 and I am getting some errors.
The tool set for cross compiling is xgo.
I can cross compile correctly for darwin or windows, but I am unable to do it for linux.
x64
/usr/local/lib/libyara.a(math.o): In function `string_entropy':
math.c:(.text+0xecc): undefined reference to `log2'
/usr/local/lib/libyara.a(math.o): In function `data_entropy':
math.c:(.text+0x1150): undefined reference to `log2'
collect2: error: ld returned 1 exit status

x86
/usr/bin/ld: skipping incompatible /usr/local/lib/libyara.a when searching for -lyara
/usr/bin/ld: skipping incompatible //usr/local/lib/libyara.a when searching for -lyara
/usr/bin/ld: cannot find -lyara
collect2: error: ld returned 1 exit status

I am not sure that the errors came either from go-yara or yara itself.
If you need more datils, please ask them.

The log2 function needs libm, so I suppose that the compiler switch -lm is missing there. For x86 it seems that the linker is only finding libyara.a for the wrong architecture, presumably your /usr/local/lib/libyara.a is an x64 library.
I have never tried to work with xgo, can you provide the command line you used?

Hi,
Here is more detail about the cross compilation process. This pice of code id for x64.
I cut some bits just for shorten it a little bit.
Compiling  & Installing Yara
You can see while configuring the Yara sources log2 is availabe.
[...]
Compiling for linux/amd64...
Bootstaping dependency yara-3.7.1 for x86_64-linux...
[...]
checking whether to check for GCC pthread/shared inconsistencies... yes
checking whether -pthread is sufficient with -shared... yes
checking for isnan in -lm... yes
checking for log2 in -lm... yes
[...]
Building dependency yara-3.7.1 for x86_64-linux...
[...]
Making install in libyara
[...]
Libraries have been installed in:
   /usr/local/lib`

Compiling the project with go-yara
Do you have any idea why this is happening?
I put the entire log.
WORK=/tmp/go-build672133109
mkdir -p $WORK/github.com/xxx/common/command/_obj/
mkdir -p $WORK/github.com/xxx/common/
cd /ext-go/1/src/github.com/xxx/common/command
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/github.com/xxx/common/command.a -trimpath $WORK -p github.com/xxx/common/command -complete -buildid 6de232fd460c689487cd553d492a5b981f9a6a4e -D _/ext-go/1/src/github.com/xxx/common/command -I $WORK -pack ./command.go
mkdir -p $WORK/github.com/xxx/common/errors/_obj/
cd /ext-go/1/src/github.com/xxx/common/errors
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/github.com/xxx/common/errors.a -trimpath $WORK -p github.com/xxx/common/errors -complete -buildid 0b88032c86f59d76b47652396d7a97a9baba41d6 -D _/ext-go/1/src/github.com/xxx/common/errors -I $WORK -pack ./error.go
mkdir -p $WORK/github.com/hillu/go-yara/_obj/
mkdir -p $WORK/github.com/hillu/
cd /ext-go/1/src/github.com/hillu/go-yara
pkg-config --cflags yara
mkdir -p $WORK/github.com/go-ini/ini/_obj/
mkdir -p $WORK/github.com/go-ini/
cd /ext-go/1/src/github.com/go-ini/ini
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/github.com/go-ini/ini.a -trimpath $WORK -p github.com/go-ini/ini -complete -buildid 474f2dbaf2ddd368243b39907845dc5143ab9520 -D _/ext-go/1/src/github.com/go-ini/ini -I $WORK -pack ./error.go ./file.go ./ini.go ./key.go ./parser.go ./section.go ./struct.go
cd /ext-go/1/src/github.com/hillu/go-yara
pkg-config --libs yara
CGO_LDFLAGS="-g" "-O2" "-L/usr/local/lib" "-lyara" /usr/local/go/pkg/tool/linux_amd64/cgo -objdir $WORK/github.com/hillu/go-yara/_obj/ -importpath github.com/hillu/go-yara -- -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 cgo.go compiler.go compiler_yara37.go error.go error_yara34.go error_yara35.go error_yara36.go error_yara37.go rule.go rule_yara37.go rules.go rules_yara34.go stream.go
mkdir -p $WORK/github.com/sirupsen/logrus/_obj/
mkdir -p $WORK/github.com/sirupsen/
cd /ext-go/1/src/github.com/sirupsen/logrus
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/github.com/sirupsen/logrus.a -trimpath $WORK -p github.com/sirupsen/logrus -complete -buildid 69e4640f7e47be37721fc4a6cace76ae47f6b1d5 -D _/ext-go/1/src/github.com/sirupsen/logrus -I $WORK -pack ./alt_exit.go ./doc.go ./entry.go ./exported.go ./formatter.go ./hooks.go ./json_formatter.go ./logger.go ./logrus.go ./terminal_linux.go ./terminal_notwindows.go ./text_formatter.go ./writer.go
cd $WORK
gcc -fdebug-prefix-map=a=b -c trivial.c
gcc -gno-record-gcc-switches -c trivial.c
cd /ext-go/1/src/github.com/hillu/go-yara
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/_cgo_export.o -c $WORK/github.com/hillu/go-yara/_obj/_cgo_export.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/cgo.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/cgo.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/compiler.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/compiler.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/compiler_yara37.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/compiler_yara37.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/error.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/error.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/error_yara34.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/error_yara34.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/error_yara35.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/error_yara35.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/error_yara36.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/error_yara36.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/error_yara37.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/error_yara37.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/rule.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/rule.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/rule_yara37.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/rule_yara37.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/rules.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/rules.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/rules_yara34.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/rules_yara34.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/stream.cgo2.o -c $WORK/github.com/hillu/go-yara/_obj/stream.cgo2.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/rules-callback.o -c ./rules-callback.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -I/usr/local/include -I $WORK/github.com/hillu/go-yara/_obj/ -g -O2 -o $WORK/github.com/hillu/go-yara/_obj/_cgo_main.o -c $WORK/github.com/hillu/go-yara/_obj/_cgo_main.c
gcc -I . -fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=$WORK=/tmp/go-build -gno-record-gcc-switches -o $WORK/github.com/hillu/go-yara/_obj/_cgo_.o $WORK/github.com/hillu/go-yara/_obj/_cgo_main.o $WORK/github.com/hillu/go-yara/_obj/_cgo_export.o $WORK/github.com/hillu/go-yara/_obj/cgo.cgo2.o $WORK/github.com/hillu/go-yara/_obj/compiler.cgo2.o $WORK/github.com/hillu/go-yara/_obj/compiler_yara37.cgo2.o $WORK/github.com/hillu/go-yara/_obj/error.cgo2.o $WORK/github.com/hillu/go-yara/_obj/error_yara34.cgo2.o $WORK/github.com/hillu/go-yara/_obj/error_yara35.cgo2.o $WORK/github.com/hillu/go-yara/_obj/error_yara36.cgo2.o $WORK/github.com/hillu/go-yara/_obj/error_yara37.cgo2.o $WORK/github.com/hillu/go-yara/_obj/rule.cgo2.o $WORK/github.com/hillu/go-yara/_obj/rule_yara37.cgo2.o $WORK/github.com/hillu/go-yara/_obj/rules.cgo2.o $WORK/github.com/hillu/go-yara/_obj/rules_yara34.cgo2.o $WORK/github.com/hillu/go-yara/_obj/stream.cgo2.o $WORK/github.com/hillu/go-yara/_obj/rules-callback.o -g -O2 -L/usr/local/lib -lyara
# github.com/hillu/go-yara
/usr/local/lib/libyara.a(math.o): In function `string_entropy':
math.c:(.text+0xecc): undefined reference to `log2'
/usr/local/lib/libyara.a(math.o): In function `data_entropy':
math.c:(.text+0x1150): undefined reference to `log2'
collect2: error: ld returned 1 exit status
2018/02/20 19:08:52 Failed to cross compile package: exit status 2.
make: *** [linux-x64] Error 1

@Xumeiquer Please tell me what exact command you used to build your program so I can try to reproduce it.
One thing that strikes me as odd is that even though you seem to have built a custom copy of yara, libyara that has been installed to /usr/local/ is used by the build system.

Hi,
As I already said I am using xgo to cross compile my project. xgo uses docker with several compilers for several architectures. The project xgo allows to compile C-like dependencies as well and the way it does is by running ./configure, make and, make install. As you may know, Yara uses a bootstrap command before calling ./configure so I made a a fix for using xgo with Yara in https://github.com/Xumeiquer/xgo and especially in https://github.com/Xumeiquer/xgo/blob/master/docker/base/build_deps.sh.
What I suggest if you try to reproduce is to download the karalabe/xgo-latest and them modify the  build_deps.sh file and generate a new image from the running container.
It may be a little bit tedious but it is a way to cross compile projects easily.
After all of this, the command line I use to build my project is:
DOCKER_IMAGE := "x-go-yara" ## Modified version of karalabe/xgo-latest
DEPS := "https://github.com/VirusTotal/yara/archive/3.7.1.tar.gz"

xgo -x -image $(DOCKER_IMAGE) -dest build -deps $(DEPS) -targets="linux/386" .

The same way to cross compile my project for Linux 64bit I use the following command:
DOCKER_IMAGE := "x-go-yara" ## Modified version of karalabe/xgo-latest
DEPS := "https://github.com/VirusTotal/yara/archive/3.7.1.tar.gz"

xgo -x -image $(DOCKER_IMAGE) -dest build -deps $(DEPS) -targets="linux/amd64" .

Just in case you ask, I can cross compile without any issues for Windows and Darwin.

A thing that seems odd to me is that you are patching specific configure options into the setup script; did --depsargs not work for you?
Could you try if adding -lm to the libs.private entry of yara.pc works for you?

Hi,
Using --depsargs doesn't work because what yara build process needs is to run the bootstrap first.
I also tried to modify the yara.pc, but unfortunately it doesn't work either.
What I have done in terms to "debug" this is running the build process manually step by step. I have discover that exporting the CGO_CFLAGS and CGO_LDFLAGS and adding -lm to CGO_LDFLAGS go-yara compiles well.
# export CGO_CFLAGS="-I${YARA_SRC}/libyara/include"
# export CGO_LDFLAGS="-L${YARA_SRC}/libyara/.libs -lyara -lm"
# go build -tags yara3.7

Do you have any clue about if it would be possible to add -lm as -ldflag or -extldflags basically without exporting the CGO_ variables?

Using --depsargs doesn't work because what yara build process needs is
to run the bootstrap first.

Ah, this is probably why I roll my own scripts / Makefiles for
cross-building instead of relying on tools like xgo. :-)

I also tried to modify the yara.pc, but unfortunately it doesn't work
either.

Ah, I forgot to mention it: You'd have to pass the "yara_static" build
tag, so the Go toolchain calls "pkg-config --static yara".

Assuming that the issue has been fixed or become irrelevant at some point in the last 5 years, I'm closing it.


Register?

@JuliaRegistrator register()

Error while trying to register: Register Failed
@bc0n, it looks like you are not a publicly listed member/owner in the parent organization (mechanomy).
If you are a member/owner, you will need to change your membership to public. See GitHub Help

Ok try that.
@JuliaRegistrator register()

Registration pull request created: JuliaRegistries/General/94519
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v1.0.0 -m "<description of version>" b6e49cf1a8fa8a7a18f182e5953f442af244e6f0
git push origin v1.0.0

Added compat
@JuliaRegistrator register()

Registration pull request updated: JuliaRegistries/General/94519
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v1.0.0 -m "<description of version>" a46c15c64ec9ee96c9116e34f6fca0868c255235
git push origin v1.0.0


chore: add ollama/qwen2.5-coder:7b-instruct-q6_K test results

I'm planning to go through everything that I can run on my M2 Max 96GB macbook and provide stats at various quants, because those are what mac users are likely to be able to run locally with varying size macbooks. This is my first one.
Happy to take suggestions as well.
And of course, thank you for building this.

I'm not sure it makes sense to include many different quants for local models. There's just such an unbounded number of ways people package up local models.

Fair enough. I thought it was potentially interesting to compare the quants provided by ollama. I agree that it's potentially too messy, so I'll just close this and post it on my blog or something.
Thank you so much again for building aider.


Install failing due to broken or incompatible module

Bug description
Currently attempting to install using the script setup.bash. Using the stand-alone option (3). I already have the MySQL setup and it seems to be connecting fine without any issue. I have tried to install on both Ubuntu 18 and 16 and both have failed at the same point.
Just as it's fetching the packages it fails with trying to obtain a certain package:
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">= 8.16.2". Got "6.17.1"
error Found incompatible module.

Steps to reproduce
Steps to reproduce the behavior:

Run the setup.bach select the standalone option.
Entering the database details
Leave everything else as default.
Allow the installer script to run.

Expected behavior
The application to successfully install.
Deployment method (select with an X)

[ ] Kubernetes
[ ] Docker
[X] setup.bash / legacy-setup.bash

Environment information

Ubuntu 18.04 and Ubuntu 16.04

Console logs (optional)
warning package.json: No license field
info No lockfile found.
warning No license field
[1/5] Validating package.json...
warning No license field
[2/5] Resolving packages...
warning @yarn_components/mocha ><EMAIL_ADDRESS>Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
warning @yarn_components/mocha ><EMAIL_ADDRESS>Jade has been renamed to pug, please install the latest version of pug instead of jade
warning @yarn_components/mocha > jade ><EMAIL_ADDRESS>Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
warning @yarn_components/mocha > glob ><EMAIL_ADDRESS>please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.js
warning @yarn_components/mocha > glob ><EMAIL_ADDRESS>Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
[3/5] Fetching packages...
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">= 8.16.2". Got "6.17.1"
error Found incompatible module.

Additional context (optional)
I'm using AWS to set up with the environment and besides installing the necessary packages for the installer script, nothing else is being run.

Following this documentation btw:
https://defectdojo.readthedocs.io/en/latest/running-in-production.html

setup.bash might be out of date, fastest is to check the Dockerfiles to see what steps are needed to get it going.

Problem resolved, just used the latest release: <IP_ADDRESS> instead of cloning the git repository.
Facing a different issue altogether now, issue already highlighted in 1934 & 1931.


added java version check

Inform the user to install Java 7 (update 55 or later) or Java 8 (update 20 or later)

otherwise ack


Add migration mane into mysql_migrations table

any provision for backward compatibility?

want to merge? Can you test it again ?


Can't setup virtualenv

I was following along with TwilioQuest and thought I'd use it as an opportunity to expand my repertoire with Python.
Trick is, I don't have the command virtualenv and while I followed the link to https://docs.python.org/3/library/venv.html it didn't tell me how to get virtualenv -- in fact the text "virtualenv" doesn't exist at that link.
Maybe the Running the application section needs updating?

After clicking around a bit I found https://virtualenv.pypa.io/en/latest/installation/ which lead me to pip install virtualenv (non-sudo, as per the link).
That said, virtualenv -p python3 env source env/bin/activate didn't work:
~/src/starter-python [master] $ virtualenv -p python3 env source env/bin/activate
Running virtualenv with interpreter /usr/local/bin/python3
Already using interpreter /usr/local/opt/python/bin/python3.6
There must be only one argument: DEST_DIR (you gave env source env/bin/activate)

I simply cd'ed into the directory I'd just cloned.

Ah I think I got it.
After reading deeper into the linked python docs for virtual environments, I think I was successful with a python3 -m venv env followed by a source env/bin/activate.
I'm gonna go with it and see what happens :)

I couldn't work it out, then I watched this video, which is awesome https://www.youtube.com/watch?v=APOPm01BVrk

I'm not sure if my issue is related at all, but when I try to activate the virtualenv I get
virtualenv: error: unrecognized arguments: source env/bin/activate
I'm not really sure what this is meant to mean.

@taffy-nay virtualenv and source are two different commands. You should not get the error message unrecognized arguments: source env/bin/activate if you issue them on two lines like this.
    virtualenv -p python3 env
    source env/bin/activate

I have submitted  PR #9 to fix README.md

I believe for windows, the command to activate your virtual environment is:
enviornmentName\Scripts\activate
The windows command isn't mentioned in the readMe. I ran this command on powershell.


Mutable atoms_with_hierarchy

I realized that the AtomWithHierarchy struct comes with the limitation of containing only immutable references to everything. So I came across the issue that if I want to replace iterations over, e.g., all residues and then all atoms within those residues with just the iteration over AtomWithHierarchys, I cannot mutate those (which is something i frequently need to do).
Something like:
pub struct AtomWithHierarchyMut<'a> {
    /// The Chain containing this Atom
    pub chain: &'a mut Chain,
    /// The Residue containing this Atom
    pub residue: &'a mut Residue,
    /// The Conformer containing this Atom
    pub conformer: &'a mut Conformer,
    /// This Atom
    pub atom: &'a mut Atom,
}

And a method (or two) to instantiate this?
Would it be feasible to create a method like atoms_with_hierarchy_mut to remedy this? I haven't tried implementing this because I was afraid I had overlooked some obvious problem with borrowing this would raise and I wanted to discuss it first.

I agree that this is something that would be neat to be able to do, however the mutability rules of Rust do not permit to have a mut reference to a structure when part of that structure is referenced at the same time. This prevents your example in that it cannot give a mut reference to all properties. This is logical in a way because having a mut reference to the Conformer you could delete the Atom that is referenced by the AtomWithHierarchyMut which would invalidate the Atom reference. To combat this a structure could be made that provides a single level of mutability upon request and is invalidated at the same time (see example below).
pub struct AtomWithHierarchyMut<'a> {
    // Likely does not work with &mut directly, but essentially it would work like this
    /// The Chain containing this Atom
    chain: &'a mut Chain,
    /// The Residue containing this Atom
    residue: &'a mut Residue,
    /// The Conformer containing this Atom
    conformer: &'a mut Conformer,
    /// This Atom
    atom: &'a mut Atom,
}

impl AtomWithHierarchyMut {
    pub fn chain_mut(&mut Self) -> &mut Chain {
        // Generate mut ref
        // By needing a mut ref to the struct it is guaranteed to be valid according to the Rust rules:
        //   * There can never be two ref mut at the same time (to the same structure)
        //   * There can never be both a ref and a ref mut at the same time (to the same structure)
   }

   pub fn chain(& Self) -> &Chain {
        // Generate ref
        // By needing a ref to the struct it is guaranteed to never be used at the same time
        // as the other method to generate a mut ref.
   }

   // all other structs wil also be defined...
}

This is indeed some arcane Rust but I would be willing to give it a try if you think it would be useful. Also if you think you are up to the challenge I would be willing to help you along.
Here are some pointers to information for how to build something like this:

(https://doc.rust-lang.org/book/ch15-05-interior-mutability.html)
(https://doc.rust-lang.org/reference/interior-mutability.html)
(https://pitdicker.github.io/Interior-mutability-patterns/)

Hm, indeed I thought I had overlooked something. I assume a struct with owned fields is not possible either, right? I seem to recall that you did it like this to circumvent ownership issues.
I have in fact read the Rust book and came across interior mutability but I don't have any practical experience with it. I'll see if I get around to it but I'm not sure when that will be or how far I'll get but we'll see. Might be good practice.

Owned fields will also not be possible, because multiple instances of the AtomWithHierarchyMut struct would then have to own the same structures.
I did indeed create a not mut variant to circumvent these problems, mut I agree that having a mut variant would certainly be helpful for certain circumstances.
If you come around to trying your hand at this feel free to ask all your questions if you ever get stuck or just need another pair of eyes to look at a problem. Also do not feel obliged to work on this I could also try my hand at it.
Sidenote, if you mark a PR as 'Draft' I can already view it and give comments but I cannot merge it into the master branch until it is finished.

 Since the AtomWithHierarchy struct is mainly a way for an Atom to know which superstructures it belongs to, wouldn't something like this be possible:
pub struct AtomWithHierarchyMut<'a> {
    // Likely does not work with &mut directly, but essentially it would work like this
    /// The Chain containing this Atom
    chain: &'a Chain,
    /// The Residue containing this Atom
    residue: &'a Residue,
    /// The Conformer containing this Atom
    conformer: &'a Conformer,
    /// This Atom
    atom: Atom,
}

I know a struct with all fields as owned doesn't work because the same residue/conformer/chain would need to be owned by several atoms but if only the Atom is owned, this problem shouldn't arise. That would of course mean that only the Atom can be modified but in my opinion that's the only goal anyway.
Other than that, I tried to devise a struct that has an atom: RefCell<&'a Atom> but unless I misunderstood something, this will not be able to be mutated because inside the RefCell the Atom is still behind a reference that won't allow this.
However, if a field like atom: RefCell<Atom> is used, one might as well go with a simple owned field.
So far my thoughts about this. If you have any input to share, I'll be very glad to hear it, the issue is a bit difficult to wrap my head around.

I do agree that it is quite a hard issue. But I do think I found a way to solve it. By using *mut T (mutable raw pointers) you can circumvent the Rust borrow checker (as long as you do it in unsafe blocks). So I saved raw pointers in the struct and needed to use raw pointers in the creation of the struct to be able to both use the reference to get its children and pass it to the AtomWithHierarchyMut constructor. The PhantomData is needed to let rust enforce proper lifetimes for the structure, in this way it can be enforced that although unsafe is used the structure itself follows the Rust borrow rules. The b lifetime in the impl block was needed to make sure that a hierarchy can be used mutable and immutably after each other, if this b would be set to `a a given structure can only be borrowed mutably or immutably for its entire lifetime.
Maybe this approach proves to be helpful it can certainly be extended to all parameters (and to rstar support) but I did not write that for sake of brevety.
atom_with_hierarchy.rs
#[derive(Debug)]
/// A version of the AtomWithHierarchy that allows mutable access to its members in a safe way
pub struct AtomWithHierarchyMut<'a> {
    /// The Chain containing this Atom
    chain: *mut Chain,
    /// The Residue containing this Atom
    residue: *mut Residue,
    /// The Conformer containing this Atom
    conformer: *mut Conformer,
    /// This Atom
    atom: *mut Atom,
    phantom: PhantomData<&'a usize>,
}

impl<'a, 'b> AtomWithHierarchyMut<'a> {
    pub(crate) fn new(
        chain: *mut Chain,
        residue: *mut Residue,
        conformer: *mut Conformer,
        atom: *mut Atom,
    ) -> Self {
        AtomWithHierarchyMut {
            chain,
            residue,
            conformer,
            atom,
            phantom: PhantomData,
        }
    }

    /// Create an AtomWithHierarchy from a Tuple containing all needed references
    pub fn from_tuple(
        hierarchy: (*mut Chain, *mut Residue, *mut Conformer, *mut Atom),
    ) -> AtomWithHierarchyMut<'a> {
        AtomWithHierarchyMut {
            chain: hierarchy.0,
            residue: hierarchy.1,
            conformer: hierarchy.2,
            atom: hierarchy.3,
            phantom: PhantomData,
        }
    }

    #[allow(clippy::unwrap_used)]
    /// Get a reference to the chain
    pub fn chain(&'b self) -> &'b Chain {
        unsafe { self.chain.as_ref().unwrap() }
    }

    #[allow(clippy::unwrap_used)]
    /// Get the chain with a mutable reference
    pub fn chain_mut(&'b mut self) -> &'b mut Chain {
        unsafe { self.chain.as_mut().unwrap() }
    }

    #[allow(clippy::unwrap_used)]
    /// Get a reference to the residue
    pub fn residue(&'b self) -> &'b Residue {
        unsafe { self.residue.as_ref().unwrap() }
    }

    #[allow(clippy::unwrap_used)]
    /// Get the residue with a mutable reference
    pub fn residue_mut(&'b mut self) -> &'b mut Residue {
        unsafe { self.residue.as_mut().unwrap() }
    }
}

model.rs
/// Returns all atom with their hierarchy struct for each atom in this model.
    #[allow(clippy::unwrap_used)]
    pub fn atoms_with_hierarchy_mut(&'a mut self) -> Vec<AtomWithHierarchyMut<'a>> {
        let mut output = Vec::new();
        unsafe {
            for ch in self.chains_mut() {
                let chain: *mut Chain = ch;
                for r in chain.as_mut().unwrap().residues_mut() {
                    let residue: *mut Residue = r;
                    for c in residue.as_mut().unwrap().conformers_mut() {
                        let conformer: *mut Conformer = c;
                        for atom in conformer.as_mut().unwrap().atoms_mut() {
                            output.push(AtomWithHierarchyMut::new(chain, residue, conformer, atom));
                        }
                    }
                }
            }
        }
        output
    }
// And the below in the test block
#[test]
    #[allow(clippy::unwrap_used)]
    fn test_hierarchy_mut() {
        let mut a = Model::new(0);
        a.add_chain(Chain::new("A").unwrap());
        a.add_atom(
            Atom::new(false, 0, "ATOM", 0.0, 0.0, 0.0, 0.0, 0.0, "C", 0).unwrap(),
            "A",
            (0, None),
            ("ALA", None),
        );
        for mut hierarchy in a.atoms_with_hierarchy_mut() {
            hierarchy.residue().serial_number();
            hierarchy.chain_mut().set_id("B");
            hierarchy.residue().serial_number();
            hierarchy.residue_mut().set_serial_number(1);
            hierarchy.chain_mut().set_id("C");
        }
        assert_eq!(a.chain(0).unwrap().id(), "C");
        assert_eq!(a.residue(0).unwrap().serial_number(), 1);
        assert_eq!(a.conformer(0).unwrap().name(), "ALA");
        assert_eq!(a.atom(0).unwrap().serial_number(), 0);
    }

Huh, I'd never date touch unsafe Rust. At least not yet. I think my Rust is not good enough to really judge the soundness of what you did there but looking at my thoughts on this (see the PR I just added :D): do you think it would be reasonable to do this with something like:
#[derive(Debug)]
/// A version of the AtomWithHierarchy that allows mutable access to its members in a safe way
pub struct AtomWithHierarchyMut<'a> {
    /// The Chain containing this Atom
    chain: Rc<RefCell<Chain>>,
    /// The Residue containing this Atom
    residue: Rc<RefCell<Residue>>,
    /// The Conformer containing this Atom
    conformer: Rc<RefCell<Conformer>>,
    /// This Atom
    atom: Rc<RefCell<Atom>>,
}

This should make it possible to have shared references for the struct fields one in interested in and then mutate those in place without resorting to unsafe. I haven't gotten very far with this thought yet but I might give it another try.

Haha yes I agree that unsafe Rust needs a bit of courage. The problem I see with your implementation is the cloning of all levels in the hierarchy. This means that the struct you generate has a fresh copy of all of its levels, so chain will contain a fresh copy of the full chain. This means that any change to any level will not change the same thing on another level, or the original PDB.
I do think we need unsafe as we 'want' to circumvent the Rust borrow rules, we want (at least internally) mutable references to all levels, and only pass them one at a time to the users of the struct so that from the outside the struct behaves according to the Rust rules.

I added the implementation (extended a bit) I showed before to the crate. For now it only creates the mutable versions on model.atoms_with_hierarchy_mut() obviously it can be useful on other places as well. If you want to see it at other places please let me know as building it in is somewhat hard with the unsafe stuff.

In my code, it would be most useful to have a method for the PDB struct. I think this also applies to the general case because most workflows start with calling an iterator on the PDB. I appreciate you taking the time to do this and I realize it isn't easy to do.

I will take a look at that, I do have some ideas to create it. And I do like the challenge of this piece of code ;-).

This looks like it would cover my use cases nicely. It would mostly serve to simplify constructs like this:
pdb.par_residues_mut().for_each(|res| {
        if list.contains(&res.serial_number()) {
            res.par_atoms_mut().for_each(|atom| match partial {
                None => edit(atom),
                Some(Partial::Sidechain) => {
                    if !atom.is_backbone() {
                        edit(atom)
                    }
                }
                Some(Partial::Backbone) => {
                    if atom.is_backbone() {
                        edit(atom)
                    }
                }
            })
        }
    })

Thanks for the work!

Great to hear!


Test shortTitle-property for commands

Refs: https://github.com/microsoft/vscode/issues/126457

[ ] anyOS @JacksonKearl
[ ] anyOS @rebornix

Complexity: 2

We have finalized the shortTitle-property for package.json-contributed commands. Test that

the property is documented
it can be used without enabling proposed API

Unassigning @rebornix as he is not available for testing

It's downright lovely.


♻  throughput and reqs per min instead of per s

#187
#186  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @RTLS and the rest of your teammates on  Graphite


no function or associated item named try_from_udt found for type uuid::Uuid in the current scope

hey! im back again with another bug (?)
uuid doesnt seem to work with #[derive(TryFromRow)] on what appears to be a perfectly sane struct:
#[derive(TryFromRow)]
pub struct SmallUser {
    pub id: UserId,
    pub email: String,
    pub verified: bool
}

where UserId is a type abbreviation for Uuid...
there appear to be no version conflicts, only one version of uuid is in Cargo.lock, but i get this:
error[E0599]: no function or associated item named `try_from_udt` found for type `uuid::Uuid` in the current scope
  --> src\user.rs:12:10
   |
12 | #[derive(TryFromRow)]
   |          ^^^^^^^^^^ function or associated item not found in `uuid::Uuid`

i have a lot of stuff in scope, i thought one of these shouldve worked:
pub use cdrs::consistency::Consistency;
pub use cdrs::frame::IntoBytes;
pub use cdrs::types::udt::UDT;
pub use cdrs::types::from_cdrs::FromCDRSByName;
pub use cdrs::types::{IntoRustByIndex, IntoRustByName};
pub use cdrs::types::value::{Bytes, Value};
pub use cdrs::types::prelude::*;

i only see timespec being used in the examples... is there something wrong with the uuid integration?
the same thing happens with Blob

Hi @Thomas-QM ,
Please check this PR out https://github.com/AlexPikalov/cdrs/pull/256. I've extended tests for Derive. Now it has both Blob and Uuid. And they are passed. Please compare it with your own code. Hope it will help.
Full test file https://github.com/AlexPikalov/cdrs/blob/6bbe74a516e0e19635f827a1685f4acb9729312d/tests/derive_traits.rs

thanks! i found the error, its apparently the type abbreviation: pub type UserId = Uuid;, and this works fine:
#[derive(TryFromRow)]
pub struct SmallUser {
    pub id: Uuid,
    pub email: String,
    pub verified: bool
}

maybe cdrs thinks UserId is a UDT, then goes out looking for the UDT implementation in the scope?

Yes, this is correct.
TryFromRow doesn't work with type aliasing such as type X = Y. During deriving TryFromRow syn crate returns a type of a field as a string and then it gets to https://github.com/AlexPikalov/cdrs-helpers-derive/blob/master/src/common.rs#L61 and matches with types that could be transformed to Cassandra values.
As you can see here https://github.com/AlexPikalov/cdrs-helpers-derive/blob/master/src/common.rs#L109 it falls to a default branch and then CDRS tries to work with that as if it was a UDT.


Refactors MARC button.

closes #3404
Why was this change made?
UX
How was this change tested?
Which documentation and/or configurations were updated?

Viewing MARC is now a modal.

Now uses normal error alerting.


index update

Overview/Summary
Updated inxed table with list of approved modules.

[x] Read the Contribution Guide and ensured this PR is compliant with the guide
[x] Checked for duplicate Pull Requests
[x] Associated it with relevant GitHub Issues or ADO Work Items (Internal Only)
[x] Ensured my code/branch is up-to-date with the latest changes in the main branch
[x] Ensured PR tests are passing
[x] Updated relevant and associated documentation (e.g. Contribution Guide, Docs etc.)

@ChrisSidebotham tf ptn ?


Add new spinner "The Irish"

This PR adds a new spinner called "The Irish". Along with this patch comes the ability to specify custom music and background for a spinner.
The Irish is a premium spinner that features a dog background and a looped 10 second clip of the cult classic "Hamster Dance".

Audio seems to be not playing on Android.
Also can you compress your images?

Compressed the images and audio.

I've been waiting for this change. Thanks for getting around to implementing it.

I'm sure the stakeholders will be pleased.

[ ] Need to hook audioplayback through our ac context, so that the global mute will work.

Bump please merge

can you reopen please!

I refuse. I have never been treated so poorly as a contributor.


Fix TLS HTTP hangers in arangobench.

This is a first experiment, but there is a solid theory which could explain the bug. Will post details later.

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/7796/


rails 5 params.map deprication fixed

@ajahongir dude just use the mege I already pull requested. My tests actually pass

Hi! Thank you but this is now fixed : https://github.com/n-rodriguez/ajax-datatables-rails/pull/216/commits/594058c524da90af0e82814a139c5d480dc55324


error: TypeError: Cannot read property 'forEach' of undefined

Hello , got this message error :
error: TypeError: Cannot read property 'forEach' of undefined     at Botly.body.entry.forEach.entry (/data/web/nodjs-botnik/web/node_modules/botly/lib/Botly.js:515:24)     at Array.forEach (<anonymous>)     at Botly.handleMessage (/data/web/nodjs-botnik/web/node_modules/botly/lib/Botly.js:514:16)     at router.post (/data/web/nodjs-botnik/web/node_modules/botly/lib/Botly.js:99:18)     at Layer.handle [as handle_request] (/data/web/nodjs-botnik/web/node_modules/express/lib/router/layer.js:95:5)     at next (/data/web/nodjs-botnik/web/node_modules/express/lib/router/route.js:137:13)     at Route.dispatch (/data/web/nodjs-botnik/web/node_modules/express/lib/router/route.js:112:3)     at Layer.handle [as handle_request] (/data/web/nodjs-botnik/web/node_modules/express/lib/router/layer.js:95:5)     at /data/web/nodjs-botnik/web/node_modules/express/lib/router/index.js:281:22     at Function.process_params (/data/web/nodjs-botnik/web/node_modules/express/lib/router/index.js:335:12)
Don't really understand why... This error come anytime i interact with the Chatbot, but this one is working anyway. It don't shut down the server but it's quite annoying to see an error message like this.
Hope someone could have an answer ! 👍

It's a story about versions, First App was at 2.9 and this one is at 2.10, this add a new entry, that's why and Botly can't handle it yet. :)


Feature request: increase/decrease terminal size command.

I am almost able to use VSCode fully without a mouse. Only issue I am facing is having to expand/de-xpand the terminal view with my mouse frequently.
See - you can use the "workbench.action.decreaseViewSize" and "workbench.action.increaseViewSize" commands to change the size of every section of the editor. Alas - not the terminal.
There does exist a command "workbench.action.terminal.resizePaneDown", but it actually resizes the mini-terminals you get when you activate Terminal split mode with the "terminal split" button.
I think this would be a really useful feature, does anybody else agree?

/duplicate https://github.com/Microsoft/vscode/issues/45346


Out-of-date documentation leads to broken build

I didn't spend much time searching, but couldn't find if this was a duplicate.

The issue.
The out-of-date docs, specifically these lines:

+ const common = require('./webpack.common.js');

The fix, specifically changing to this line:

+ const common = require('./webpack.common.js')();

webpack accepts configuration objects or a function which returns a configuration object, if webpack.common.js returns a function, you have to call it: () at the end.
In the docs, it returns an object, hence you don't have to call it.

I see, then perhaps webpack-merge should call the function if it is passed one.


"wrong number of arguments" exception when using inherited options with @Command-annotated methods

The inherited options (#649) feature introduced in picocli 4.3 causes an exception when used with @Command-annotated methods:
Code to reproduce the problem:
import picocli.CommandLine;
import picocli.CommandLine.Command;
import picocli.CommandLine.Option;

import static picocli.CommandLine.ScopeType.INHERIT;

@Command(name = "top")
public class Top implements Runnable {

    @Option(names = {"--debug", "-d"}, scope = INHERIT)
    protected void setDebug(final boolean debug) {
        System.out.println("Debug has been set to " + debug);
    }

    @Override
    public void run() {
        System.out.println("Running " + this);
    }

    @Command
    void sub() {
        System.out.println("Running sub");
    }

    public static void main(String[] args) {
        new CommandLine(new Top()).execute("sub", "--debug");
    }
}

Output:
Debug has been set to true
java.lang.IllegalArgumentException: wrong number of arguments
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at picocli.CommandLine.executeUserObject(CommandLine.java:1872)
	at picocli.CommandLine.access$1100(CommandLine.java:145)
	at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2243)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2237)
	at picocli.CommandLine$RunLast.handle(CommandLine.java:2201)
	at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2068)
	at picocli.CommandLine.execute(CommandLine.java:1978)
	at picocli.examples.inheritedoptions.Top.main(Top.java:35)

Thank you @garretwilson for raising this!
I pushed a fix to master that addresses the issue.
Can I ask you a favor: can you take the new version for a spin with your use case(s)? It would be good to find if there are other issues not covered by the picocli tests before I publish a new release...
To verify, check out picocli master locally, and build it with publishToMavenLocal. That should publish picocli-4.3.1-SNAPSHOT to your local .m2 Maven cache.
git clone https://github.com/remkop/picocli.git
cd picocli
gradlew publishToMavenLocal

You can then try this in a project that uses the info.picocli:picocli:4.3.1-SNAPSHOT dependency. Feedback very welcome!

Man, @remkop , today was not my day. One roadblock after another. Eclipse bugs. Picocli bugs. Lots of other things that you weren't responsible for. 😆 Finally I gave up, watched movies, and drank beers. I guess that's what vacations days are for anyway.
I'm sorry but I won't be able to test this out as a -SNAPSHOT. I'm really sorry. I know it would be nice for you to get that pre-release feedback, but I'm so preoccupied (ocupado e preocupado, se falar português) with various things that I just won't be able to get to it. Do your best and I'll test the final release.
Boa sorte and thanks for filing this ticket for me.
Now I think I have one or two more beers in my quarantine lair here …

@garretwilson picocli 4.3.1 has been released. Enjoy! :-)

@remkop that seems to have fixed it. Thank you so much!

Great! Make sure to use the latest version (4.3.2).


trying to upgrade minion pod memory and getting failed

i can not upgrade helm chart and reinstall because there is 200GB data runing on production, but need to upgrade minion pod memory as its exausted and its running with statless set. when trying to update in running pod its giving issue .
Failed to save resource: Pod "pinot-minion-stateless-55967477d5-g8bxv" is invalid: spec: Forbidden: pod updates may not change fields other than spec.containers[*].image, spec.initContainers[*].image, spec.activeDeadlineSeconds, spec.tolerations (only additions to existing tolerations) or spec.terminationGracePeriodSeconds (allow it to be set to 1 if it was previously negative)
core.PodSpec{
Volumes: {{Name: "config", VolumeSource: {ConfigMap: &{LocalObjectReference: {Name: "pinot-minion-stateless-config"}, DefaultMode: &420}}}, {Name: "data", VolumeSource: {EmptyDir: &{}}}, {Name: "kube-api-access-rqr6l", VolumeSource: {Projected: &{Sources: {{ServiceAccountToken: &{ExpirationSeconds: 3607, Path: "token"}}, {ConfigMap: &{LocalObjectReference: {Name: "kube-root-ca.crt"}, Items: {{Key: "ca.crt", Path: "ca.crt"}}}}, {DownwardAPI: &{Items: {{Path: "namespace", FieldRef: &{APIVersion: "v1", FieldPath: "metadata.namespace"}}}}}}, DefaultMode: &420}}}},
InitContainers: nil,
Containers: []core.Container{
{
... // 5 identical fields
Ports: {{Name: "minion", ContainerPort: 9514, Protocol: "TCP"}},
EnvFrom: nil,
Env: []core.EnvVar{
{
Name: "JAVA_OPTS",
Value: strings.Join({
"-XX:ActiveProcessorCount=",

"2",

"4",
" -Xms256M -Xmx1G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xlog:gc*",
":file=/opt/pinot/gc-pinot-minion.log -Dlog4j2.configurationFile=",
"/opt/pinot/conf/log4j2.xml -Dplugins.dir=/opt/pinot/plugins",
}, ""),
ValueFrom: nil,
},
},
Resources: {Requests: {s"memory": {i: {...}, Format: "BinarySI"}}},
VolumeMounts: {{Name: "config", MountPath: "/var/pinot/minion/config"}, {Name: "kube-api-access-rqr6l", ReadOnly: true, MountPath: "/var/run/secrets/kubernetes.io/serviceaccount"}},
... // 12 identical fields
},
},
EphemeralContainers: nil,
RestartPolicy: "Always",
... // 28 identical fields
}

give me some solution on this . we are locked here

cc @xiangfu0
I guess this is a general cloud operation issue?

@teamiumtree do you want to submit a PR to fix the deployment.yaml?


World generator modifiers are not recognized properly

There seem to be a few problems with the way you support the world generator modifiers.  If I register my world generator modifier early enough it seems to get registered by your plugin just fine, however with a few minor problems:

You use WorldGeneratorModifier.getName() which is not guaranteed to be unique. You should use getId() here instead, especially because the names can also contain spaces or other special characters.

You convert all arguments into upper case, so if I have a lower case name your plugin is currently unable to find the world generator modifier. (If you use Sponge.getRegistry().getType(WorldGeneratorModifier.class, name) instead it should be case-insensitive).

Just a few suggestions to make them work properly. Thanks :)

I see you pointed out something I missed when I re wrote the world creation command. I think that might explain a few problems I've been having. Changes will be updated in next build

My tests confirm these changes resolve most world creation problems, the only gripe I have is modifier id's are normally formatted pluginid:modifier which is more of a cosmetic annoyance than anything, but other than that, Thanks for pointing out these issues

resolved in 52d89367d08ff2cd8ea475d53c6e80aa5bc58ef8


Update library.md

Updated header to reflect new tab structure

need to hold on this until https://github.com/carbon-design-system/carbon-website/issues/323 is fixed


Show raw logs.

Introduces the ability to see logs in their raw form and to move between this view and the current fully decorated logs.

Once this is finalised and merged we should remember to add a section to the documentation of OCaml-ci that mentions this feature.

Addresses https://github.com/ocurrent/ocaml-ci/issues/875#issuecomment-1728326210


ccc

Because

This PR

Issue

Closes #XXXXX
Additional Information

Pull Request Requirements

[ ] I have thoroughly read and understand The Odin Project Contributing Guide
[ ] The title of this PR follows the location of change: brief description of change format, e.g. 01-flex-center: Update self check
[ ] The Because section summarizes the reason for this PR
[ ] The This PR section has a bullet point list describing the changes in this PR
[ ] If this PR addresses an open issue, it is linked in the Issue section
[ ] If applicable, I have ensured that the TOP solution files match the Desired Outcome image

Hey @Gogsy , they specifically say please DO NOT open a Pull Request to have your solutions merged into this repo or to show your solution. in the README.MD file. For your information :)


Traceability in unified pipelines with Jira

Why does this add a pipeline at the root? This repo doesn't have anything to build or release.

You're right Matt. Looks like the later commits were pushed accidentally to the same branch while using Azure Pipelines starter template from UI. Will raise a fresh PR to avoid confusion. Closing this.


multiline concatenated string formatted into one very long line

using the experimental LS with dfx 0.11.2 the following happens

IMO it would be nice if it would be formatted into multiple lines if the string exceeds a certain width to maintain readability
https://github.com/flowerpowerdao/punks-nft-canister/pull/32/commits/521759d663068a907fdd95756e9ce823c4b7fe46#diff-303c0b742b59bc66b0e9f6e381809d383386ab3b0ba9cda25a74f1405fc411edL195-L196

Absolutely.


Vienna unmarks the articles from Github feeds because Github sends slightly different message body each time.

First of all, as a happy user of Vienna I want to say thank you very much for making and maintaining this great RSS app!
I am seeing that the articles from the Github subscriptions like https://github.com/stanislaw.atom are always unmarked from "read" to "unread" even if I have marked them as read before.
I am looking at the payload of article and updatedArticle and compare their body fields in the
-(BOOL)updateArticle:(Article *)existingArticle ofFolder:(NSInteger)folderID withArticle:(Article *)article method and I am seeing that Github sends slightly different payload each time it is asked for the articles.
The following two pieces of payload from Github only have data-hydro-hmac= parameter different but this still makes Vienna to unmark the articles from being read (see also Diffchecker for these two chunks).
Does anybody have a good idea how we could relax the rule that considers if the articles identical or not? Write an adapter specific to Github and do a bit more of parsing to exclude irrelevant modifications?

I will subscribe to your feed and take a look at how Vienna behaves whilst I contemplate how to handle it :)

I have subscribed to my own feed and also the Vienna main branch feed, and I cannot reproduce the issue.


Console api experiment id fix

🚀 Deployed on https://62f295c10564ae2454379f19--cozy-fox-0defec.netlify.app


libuv fails to build on RHEL 5

RHEL 5 is old, but technically still supported.
libuv fails to build on this platform for two reasons:

O_CLOEXEC is not defined. There are several places across libuv which check for this flag's availability using #ifdef O_CLOEXEC but some places check it differently and compilation on RHEL 5 fail there:

In core.c, uv__dup2_cloexec checks using #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__linux__) (the function above this one, uv__open_cloexec, uses the correct #if defined(O_CLOEXEC) and their implementations are a little similar)
In linux-core.c, uv__platform_loop_init checks for Android API version instead of the flag's availability

More recently, commit dfd64933d55fee97c329a1c13b5d6dac874e295c added a dependency on a more recent kernel version ("Assume the presence of the eventfd2()")

The commit mentioned above says about the kernel version that "our baseline is 2.6.32.". Even if so, the checks for O_CLOEXEC at least can still be unified. And please do consider keeping support for RHEL 5 - it can still work with only a few changes.

We dropped support for kernels < 2.6.32 three years ago and we have no interest in reviving that support. I mean, even 2.6.32 is 11 years old by now.


Custom Installer Repository Support

New field for Dependency Check installer location that can override the default pull from GH releases.

This is in develop. Waiting for confirmation from @DeSpalis that the implementation works in dev before promoting.

We tested it out and it's working as intended. Thanks for the help.

Merging into the main branch.


Remove superfluous and unmaintained gem

Closing this as it's added to https://github.com/threemarb/threema/pull/41 with other changes necessary to start running tests in GitHub actions.


Request for the IR GPIO settings

Pretty good work! Would you open source the newer version code? Or provided a way to change the IR GPIO? Thanks for your excellent work.

No plan

Ok, thank you!


Add PIC-10 to Ghidra

There is not much to add here. I am trying to reverse a firmware image that is supposedly for PIC-10. Ghidra has PIC-12, PIC-16, PIC-17, PIC-18 and PIC-24, but no PIC-10.

Do you have a link to the instruction set? I'm seeing docs for PIC-16, not much for PIC-10. Do you know what the differences between PIC-10 and PIC-12 are?
Should be pretty easy to add support for PIC-10.

Is this it? https://lorrainbow.files.wordpress.com/2016/11/pic10f322-instruction-set.pdf
It says 14-bit opcode which I think is wrong.

Looking at Microchip's website, apparently PIC-10 can be one of the following:

PIC10F200
PIC10F202
PIC10F204
PIC10F206
PIC10F220
PIC10F222
PIC10F320
PIC10F322

Their datasheets seem to be divided into three groups:

PIC10F200/202/204/206 share a datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/40001239F.pdf
PIC10F220/222 share a datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/40001270F.pdf
PIC10(L)F320/322 share a datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/40001585D.pdf

Instruction sets:

PIC10F200/202/204/206: Instruction Set Summary - Page 45 | Instruction Set Table - Page 46
PIC10F220/222: Instruction Set Summary - Page 43 | Instruction Set Table - Page 44
PIC10(L)F320/322: Instruction Set Summary - Page 147 | Instruction Set Table - Page 148

They seem to mention PIC-16 in PIC-10's instruction set which is weird.
Also, no, I have no idea what the differences between PIC-10 and PIC-12 are.

I'm still a noob but glancing at the docs you linked I would say that those are two different instruction sets. PIC10F200/202/204/206 and PIC10F220/222 appear identical with 12 bit opcodes. The PIC10(L)F320/322 is different with a 14-bit opcode.
Do you know the exact processor you are trying to disassemble for? Have you tried opening with different PIC processors in Ghidra?

I think you are right and they are indeed two different instruction sets.
No, that's my problem. I have the firmware but have no idea what the CPU is. I've tested different versions of the firmware with cpu_rec and it guesses PIC10 for all of them.
I haven't yet tried opening with different PIC processor in Ghidra, I think. I started testing the whole CPU list one by one, but I am at the very beginning yet.
It does open as some, but with lots of errors, so I am guessing that I haven't found the right CPU yet, hoping that when I do, it would be much cleaner.


Gaussian drivers for python 3.9

Summary
Details and comments

Since Gaussian is not available in the CI, could somebody, who has access to a License, verify that this works as expected? At least on one platform?

For reference, I tested on the following 64 bits Virtual Machines under Anaconda environment python 3.9. Each driver has the same dependencies as the previous py3.8. It would be good to have an independent test to be sure:

Windows 10 Pro (latest updates)
Ubuntu 21.10
MacOS Big Sur 11.6

I have Gaussian installed in all 3 VMs. Lets see if @woodsp-ibm has anything else to say.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

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

Totals

Change from base Build<PHONE_NUMBER>:
0.009%

Covered Lines:
9518

Relevant Lines:
11124

💛  - Coveralls


go mod vendor npipe to this repo

Fixes #117
2 parts to the fix

Bring the code over and verify it builds
Implement DialExisting to fix issue where dialing using np doesn't quit immediately when the named pipe doesn't exist.

Codecov Report

Merging #118 (7c4207d) into main (70e2d2b) will decrease coverage by 0.06%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #118      +/-   ##
==========================================
- Coverage   74.11%   74.06%   -0.06%
==========================================
  Files          29       29
  Lines        5613     5613
==========================================
- Hits         4160     4157       -3
- Misses       1206     1208       +2
- Partials      247      248       +1

see 1 file with indirect coverage changes

I couldn't get this to work with a vendor folder whose only content was this package, nor did it work with a replace directive in go.mod. I think there's something funky with this old repo that breaks go build with new tools.

Do we need to create another issue to vendor this properly at some later point?

since we keep the license and attribution intact we are ok as-is.
thx


HTML elements of 100% height in FlexBoxes are not displayed in Chrome

OpenUI5 version:
1.36.2
Browser/version (+device/version):
Chrome 49 (or earlier)
Any other tested browsers/devices(OK/FAIL):
Firefox 45 OK
URL (minimal example if possible):
http://output.jsbin.com/hubaripizi
User/password (if required and possible - do not post any confidential information here):
N/A
Steps to reproduce the problem:

Open the example in Chrome 49 (or earlier).
Check if the inner UI5 HTML element "html1" (wrapped in VBoxes) has 100% height and shows its black background.
Open the example in Firefox 45.
Check if the inner UI5 HTML element "html1" (wrapped in VBoxes) has 100% height and shows its black background.

What is the expected result?
The inner UI5 HTML element is supposed to occupy 100% of available height and therefore paint the central zone -- between a header and footer bar -- black.
What happens instead?
Chrome assigns 0px height to the inner UI5 HTML element. The black zone is invisible.
Any other information? (attach screenshot if possible)
We also had the problem with Renderers that draw SVG elements. Our D3-based graphs with 100% height are not visible when contained in FlexBoxes.
Related to issues #49 and #66.
The "display: flex" CSS3 property is not (yet) implemented correctly in Chrome (https://bugs.chromium.org/p/chromium/issues/detail?id=346275).

Hi and thanks for your message!
I have passed this on to the responsible developer to see what we can do.
Kind regards
Christiane

Hi @mugglmenzel,
As you probably know flexbox has several specs and implementation is various from browsers to browsers. Around 4 years ago when we started to this control we decided to wrap the flexitems to workaround some major issues. But in this case actually the wrapper div gets flexable not the given control. And this is the real reason why you are facing with this issue now. At the moment browsers have good flexbox support so we do not need wrappers anymore but we should still be compatible.
So our feature plan was adding a new enumeration "NoWrapper" for the renderType property of the FlexBox but this has not been implemented yet.
Here I am sending what you can do to workaround this issue cross-browser.
http://jsbin.com/giboqasepe/1/edit?html,js,output
Best,
Cahit

Thx Cahit.
We tried the workaround in our GUI component (part of a new SAP standard product) and it looks good.

Update: Unfortunately, the "position: absolute" fix is not a solution. The UI component then takes more space then expected. It aligns with the closest fixed size element and overlaps other elements in nested VBoxes it is contained in.

Hey @aborjinik can you take another look please? It seems your workaround did not help

@mugglmenzel a jsbin example would really help here, keeping the author action state for now

Hi, I finally found the time to finish a jsbin example that comes close to our situation:
http://jsbin.com/xorejuciqe/edit?html,js,output
We even have a more complex nesting with component containers, components and views wrapped in each other. It seems views break the height behavior and components, too.
I can also provide a more detailed snippix if it is possible to create components (components.js) there.

@mugglmenzel the issue is with your jsview which does not get the full height from the container, I explained the reason why it does not above, and the solution is still the same. http://jsbin.com/kasuyonupa/1/edit?css,js,output

@mugglmenzel Hi, did you try aborjiniks solution? Are there any more todos from our side here?
Thanks for a quick feedback!
Kind regards,
Christiane

Since there is no response from the author for more than 4 weeks I'm closing the ticket.


Point cloud Intensity data is missing

I also find the point cloud's intensity is missing, do you fix it?

@rohithsaro how can the intensity missing, if it's in the binary file? Doesn't the code convert it correctly?