Relocatable Installation

Feature Request for Installation:
After installation, OpenCoarrays 2.2.0 was not relocatable.  Direct links to build directory structures are in the system somewhere.
Thanks!

Thanks for the feature request, @singleterry! We are aware of this deficiency and are working to resolve the problem. I'm hoping this will be in the next minor version number bumping release. :crossed_fingers:

@singleterry: The latest release of OpenCoarrays (2.6.1) should be relocatable, and reproducible (assuming you set your environment appropriately). Please let me know if that solves your issues.

Hello,
Major issue in setup.csh:
set path ("/users0/rsinglet/CAF/OpenCoarrays-2.6.1/prerequisites/installations/gnu/8.3.0"/bin $path)
needs to be
set path = ("/users0/rsinglet/CAF/OpenCoarrays-2.6.1/prerequisites/installations/gnu/8.3.0"/bin $path)
I am still checking for relocatablity besides the setup files.
Thanks
Robert

Robert C. Singleterry Jr., PhD
NASA Administrator's Fellow (2002-2004, Cohort 6)
Durability, Damage Tolerance, & Reliability Branch
Research Directorate
NASA Langley Research Center
MS 188E
2 West Reid Street
Bldg. 1205  Rm. 285
Hampton, VA 23681
757 864 1437 (Office)
757 864 8094 (FAX)
<EMAIL_ADDRESS>757 371 4848 (Personal Cell)

From: zbeekman<EMAIL_ADDRESS>Sent: Thursday, March 21, 2019 2:33 PM
To: sourceryinstitute/OpenCoarrays<EMAIL_ADDRESS>Cc: Singleterry, Robert C. (LARC-D309<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [sourceryinstitute/OpenCoarrays] Relocatable Installation (#605)
@singleterryhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_singleterry&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=ncVImubQGT9opafLNWqIugZRHAiRrABfeXRYwzOtKOWxzhwtjUkdbBwws_iaZNQj&m=lyWaUf5D4SP0K3p0YBVwY2_aboJJDvBMxy_fkyh4iEY&s=oIBc2urL-qeLw34_SmzyiIaGTKt2MlHyw91WN9mnLSk&e=: The latest release of OpenCoarrays (2.6.1) should be relocatable, and reproducible (assuming you set your environment appropriately). Please let me know if that solves your issues.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_sourceryinstitute_OpenCoarrays_issues_605-23issuecomment-2D475352361&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=ncVImubQGT9opafLNWqIugZRHAiRrABfeXRYwzOtKOWxzhwtjUkdbBwws_iaZNQj&m=lyWaUf5D4SP0K3p0YBVwY2_aboJJDvBMxy_fkyh4iEY&s=UhQVM6PfJYii9pWRp9DzLpH_UQNv-J-GA9ARCr_IQ0k&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AEL6W1YZebB5ZGpIck1Ib6f6KjmOvej1ks5vY9BygaJpZM4YUxAM&d=DwMCaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=ncVImubQGT9opafLNWqIugZRHAiRrABfeXRYwzOtKOWxzhwtjUkdbBwws_iaZNQj&m=lyWaUf5D4SP0K3p0YBVwY2_aboJJDvBMxy_fkyh4iEY&s=7bBMkDPtnDd_7_MF6pN1QdqEotGkKHZNMyp2SNi7hww&e=.

I have fixed the csh issue on the gfortran-non-determinism-repeat branch which includes a bug fix for a GFortran bug in which repeat() is broken, and if you are able to use it, it embeds a path to the source directory in the object file even when you request it not to.

Hello,
I manually put the ‘=’ in the setup.csh file and it worked fine.
I installed 2.6.1 under my directory structure (edited the setup.csh file as noted above) and had my SA copy my installation directory to /usr/local and it appears to work with no issues!!!!
Thanks for the modifications.
I am not sure what the repeat() fix you did is fixing, but I’ll believe you.
To get the latest 2.6.(2?) with these fixes in it, what do I do!?!
Thanks
Robert

Robert C. Singleterry Jr., PhD
NASA Administrator's Fellow (2002-2004, Cohort 6)
Durability, Damage Tolerance, & Reliability Branch
Research Directorate
NASA Langley Research Center
MS 188E
2 West Reid Street
Bldg. 1205  Rm. 285
Hampton, VA 23681
757 864 1437 (Office)
757 864 8094 (FAX)
<EMAIL_ADDRESS>757 371 4848 (Personal Cell)

From: zbeekman<EMAIL_ADDRESS>Sent: Tuesday, March 26, 2019 12:14 PM
To: sourceryinstitute/OpenCoarrays<EMAIL_ADDRESS>Cc: Singleterry, Robert C. (LARC-D309<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [sourceryinstitute/OpenCoarrays] Relocatable Installation (#605)
I have fixed the csh issue on the gfortran-non-determinism-repeat branch which includes a bug fix for a GFortran bug in which repeat() is broken, and if you are able to use it, it embeds a path to the source directory in the object file even when you request it not to.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_sourceryinstitute_OpenCoarrays_issues_605-23issuecomment-2D476725801&d=DwMFaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=ncVImubQGT9opafLNWqIugZRHAiRrABfeXRYwzOtKOWxzhwtjUkdbBwws_iaZNQj&m=nK4hd_9rNVCyxrqKNTHitjh9A7HI-z5pdGzZKWGzfts&s=e87e33RBaU9XYgnCph7ko8I2WSK_gxqTN5_TlL9SCHw&e=, or mute the threadhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_AEL6W0NtACprte5d5ykLgsENZ-2DUbxxeDks5vakdkgaJpZM4YUxAM&d=DwMFaQ&c=ApwzowJNAKKw3xye91w7BE1XMRKi2LN9kiMk5Csz9Zk&r=ncVImubQGT9opafLNWqIugZRHAiRrABfeXRYwzOtKOWxzhwtjUkdbBwws_iaZNQj&m=nK4hd_9rNVCyxrqKNTHitjh9A7HI-z5pdGzZKWGzfts&s=yARP3AThM9RlUL2WMPQ0dY4I16pWN6zneEmcqF_1IZQ&e=.

Hi Robert,
You can install from the source tarball provided by github, now that I have merged the fix into master, or you can clone and install from source, or you can wait for the next release.
FYI, the relocatability focuses on the libraries, and less so on the environment setup and compiler wrapper scripts, so YMMV with those. I'm planning to overhaul the wrapper scripts when I get the chance, so there should be additional improvements to those that will better support relocatability and address any lingering issues in the future.
I'll close this issue once we mint a new release.


Discovery ES not video found

The website is:
https://www.discoveryplus.com/es/video/asi-se-hace/temporada-15-pinceles-para-artistas
C:\video>youtube-dl -U -v "https://dplus-es-google-v2.prod-vod.h264.io/a7bc/c92c/33a5/b4c1ae4f-114e-434d-ad57-9640f54eada7/fmp4-playready-widevine/x-goog-token=Expires=1639154598&KeyName=prod-sign-url-key-eu&Signature=SEWOnoD50a7RF6ildB3aDkhF4X4/master.mpd"
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-U', '-v', 'https://dplus-es-google-v2.prod-vod.h264.io/a7bc/c92c/33a5/b4c1ae4f-114e-434d-ad57-9640f54eada7/fmp4-playready-widevine/x-goog-token=Expires=1639154598&KeyName=prod-sign-url-key-eu&Signature=SEWOnoD50a7RF6ildB3aDkhF4X4/master.mpd']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2021.06.06
[debug] Python version 3.4.4 (CPython) - Windows-10-10.0.19041
[debug] exe versions: ffmpeg 2021-12-09-git-b9f4c1231f-full_build-www.gyan.dev
[debug] Proxy map: {}
youtube-dl is up-to-date (2021.06.06)
[generic] master: Requesting header
WARNING: Falling back on generic information extractor.
[generic] master: Downloading webpage
[generic] master: Extracting information
WARNING: [generic] Unknown MIME type image/jpeg in DASH manifest
ERROR: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 815, in wrapper
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\YoutubeDL.py", line 836, in __extract_info
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\extractor\common.py", line 534, in extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\extractor\generic.py", line 2525, in _real_extract
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\ytdl-org\tmpkqxnwl31\build\youtube_dl\extractor\common.py", line 1374, in _sort_formats
youtube_dl.utils.ExtractorError: No video formats found; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

Checklist

[ ] I'm reporting a broken site support issue
[ ] I've verified that I'm running youtube-dl version 2021.06.06
[ ] I've checked that all provided URLs are alive and playable in a browser
[ ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[ ] I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE

Description

WRITE DESCRIPTION HERE

DRM PlayReady protected.


Document @SqlNullable

Provide javadoc level documentation addtional to documentation already
existing in docs in presto-docs/src/main/sphinx/develop/functions.rst

good, thanks you


Error reading from fake-indexeddb using where clause

https://codesandbox.io/s/dexie-bug-tr8ml
This code sandbox will error with fake-indexeddb but succeed with regular indexedDB, toggle lines 15 and 16 to see it work. It happens with both 2.0.4 and 3.0.0-rc1. I don't know if the bug is in Dexie or fake-indexeddb, but I don't know how to reduce this to a simpler case to show to fake-indexeddb.
I found this while I was investigating my own code, where an anyOf(severalIds) would only get one per id, even when there were two for a specific id.

It looks like this was unrelated.


Spindle fixes

These fixes allow the spindle and it's settings to show up in the LinuxCNC calibration tool.  It should take care of loading the settings from the ini file as well.
I'm not sure what the intention of changing the spindle-enable and spindle-on around, but changing one of the lines allows the spindle to start again.  Feel free to edit things.  I probably need to read more about the spindle docs to understand the separation.

I'm setting up a new dev PC so be patience with me.
JT

I have no plans to support multiple spindles so can you remove the for loop in loadini.py?
JT

Sure thing.  I have a project taking my time at the moment, but I'll try to get to it soon.


Display Proper Error Messages

When things like 429s hit, the response from most APIs gets displayed all ugly.

Instead, just display the actual content - it's a problem with the parsing, should first check for a string

To replicate this, try dropping the API_LIMIT down significantly (like to 5), and then just submit some forms over and over again on the profile page


Column access to tables

With #17 we have defined a simple table structure, but we have no simple way to get a numpy array of the columns, for instance, we might hope to be able to get
child_left = TableCollection.intervals.child_left

Or even set a whole column:
TableCollection.intervals.child_left = child_left +1

(we can't even do the latter in tskit, though)

I'd be happy to take this one on. I will see if I can replicate how its done with tskit data.

Great. We could probably do a bit better than tskit for the interface. For example, it would be good to have something like this:
https://github.com/tskit-dev/tskit/issues/2015
It would be much better if we could use tables.nodes.time[x] to get direct memory access, rather than the somewhat clunky ts.nodes_time[x]. You might well want to talk to @benjeffery about this.
Do make sure, however, that we aren' "prematurely optimising". For the size of datasets we are experimenting on, there's no need to make this fast (yet). It's better to get a slow API that can be sped up later, under the hood.
Once we get to this stage, it's vital to start setting up unit tests, so #20 is important to tackle at the same time.


add persName to handList/hand

The list of hands (at item level) did not allow any child elements in <hand>. Now, a <persName> element can be created within <hand> to allow the encoding of information such as @authority and @cert. It does not make the editor page any prettier though. My apologies.
An XSLT style sheet is provided (in /xquery/tools/batch_xsl) to move existing text to a <persName> child element if desired, i.e., if the text currently contained in <hand> are mainly names.

The built-in batch transformation at http://[your-server]/storage/tools/batch_transform_settings.xq may be used to change existing "hand" text into persName child elements.


Add gitignore support for ATS lang

Reasons for making this change:
We already have linguist support for ATS, but we do not have a .gitignore template for ATS projects created under Github. This PR aims to provide support for that.
Links to documentation supporting these rule changes:
Source for .gitignore template - https://github.com/ats-lang/ATS-Postiats-release/edit/master/.gitignore (heavily adapted)
Link to application or project’s homepage:
http://www.ats-lang.org/ (homepage)
https://github.com/ats-lang/ATS-Postiats-release (main repo page)

Thank you! :-)


Expose event_callback in AMI configuration

Firstly, this is not a clean merge because you have specified develop as the target branch. You should specify support/1.x.x, since this targets Adhearsion 1. Additionally, I hesitate to merge this because 1.x has had an unofficial feature-freeze, where in Adhearsion 2.0, AMI is handled by the ruby-ami library. I would like to get @bklang's thoughts on this.

I'm not 100% sure what this pull request is aiming to achieve because because the list of commits seems to include a lot that is already in support/1.x.x.  But if I look only at the very last commit, 0fcb882, I think the intent is to make it so that the application can define an event handler other than the Theatre system that Adhearsion provides.  Would you confirm that is your intent?  Are there other bits of functionality I missed?

Thomas: Thanks for the idea and this pull request.  However, we've decided not to merge this.  The Adhearsion framework makes a lot of assumptions about how it works internally, including how events are handled.  Adding this function would remove that assumption and would make documentation and support more difficult.  We need to keep the framework focused on its designed features.
One alternative that may appeal to you would be using the AMI libraries directly and running them through whatever handler you like.  This would not require you to load the rest of Adhearsion.


Added missing network deployments

Description

Added configs for missing networks.
Deployed contracts on missing networks.
Missing networks: Avalanche, Fuji, BSC, BSC Testnet, Base, Linea, Linea Testnet.
Added deployment info for Bifrost and Bifrost Testnet deployments.

Motivation and Context

Adding missing deployments.

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

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

Added Scroll Sepolia deployment to this PR


Request to add fan rotation direction

Hi there,
I would like to request to add fan rotation direction as well as a toggle to change the direction (for a ceiling fan). And also to be able to select different HomeKit icons, or at least be able to use the ceiling fan icon, if possible.
Thanks!

Hi @r2shyyou , thanks for the feedback.
The icon is not controled by the plugin, it is provided by HomeKit App itself. I see the Switch Accessory have options in HomeKit to change the device type as light/fan/switch, then the icon can be changed. But unfortunately Fan Accessory doesn't have this feature 🤔.
OK the rotation direction will be added these days, could you please provide your device's informations? Please refer to https://github.com/0x5e/homebridge-tuya-platform#troubleshooting and upload your device info json, so I can confirm the function can works on your device.

Thanks for the quick response. If the Switch Accessory has options in HomeKit to change the device type to light/fan/switch, the perhaps it would be best (more flexible) to change the Fan part of the plugin to register as a Switch Accessory, since it still includes fan as an option.
Regardless, as requested, attached is the device info json.
TuyaDeviceList.eu1668598294535ekMby.txt

Yes I will add override config option to let users choose the device type in 1.7.0. It's implementation will be a bit complicated.
But there is another problem, if you change your fan device into Switch Accessory, it will lose fan speed, only power on/off left. :(

Please try beta.34

Rotation works perfectly, thanks!! The speed seems funky though. Doesn't seem to work right. That might be that my fan has a 0-6 scale, while Home.app shows a 0-100 scale.

This can be supported. I will remap 0-6 into 0-100 then it should work.

it's working perfectly, thank you! great work!

@r2shyyou I was wondering if you might be able to share how you were able to configure the Rotation Direction characteristic? I am not quite sure where to get started on this one...

@r2shyyou I was wondering if you might be able to share how you were able to configure the Rotation Direction characteristic? I am not quite sure where to get started on this one...

if you're referring to configuration within the plugin itself, note that i am not the plugin developer so unfortunately i can't advise on that

@r2shyyou I do not mean within the plug-in itself sorry. It sounds like you had got this working for yourself, when setting up your device did you have to do anything extra in the Homebridge config for this plug-in (the device setup you put in the popup box) or did it just already appear with RotationDirection?

@r2shyyou I do not mean within the plug-in itself sorry. It sounds like you had got this working for yourself, when setting up your device did you have to do anything extra in the Homebridge config for this plug-in (the device setup you put in the popup box) or did it just already appear with RotationDirection?

i see. no, i did not have to do anything extra. rotation direction is part of the native functionality of the fan itself and also shows up in the device debugging section of the Tuya website

Bugger, yeah my Fan appears in HomeKit without it but in the Tuya app it is there. I will have to do some further digging when I can find the time. Thanks for the info!

Bugger, yeah my Fan appears in HomeKit without it but in the Tuya app it is there. I will have to do some further digging when I can find the time. Thanks for the info!

i should clarify that while i didn't have to do anything extra in the config, i did have to ask the developer to add the functionality (see first posts in this thread). maybe you have to do something similar?

I would say prior to your situation this plug-in could not expose the characteristic, the developer then added the ability. From what I can see in the readme is that I need to set up “Non-Standard DP” to be able to use it, but have no idea how to do it and was hoping you did it haha… It sounds like you were luckier than me and it just worked for you without having to do that…

I would say prior to your situation this plug-in could not expose the characteristic, the developer then added the ability. From what I can see in the readme is that I need to set up “Non-Standard DP” to be able to use it, but have no idea how to do it and was hoping you did it haha… It sounds like you were luckier than me and it just worked for you without having to do that…

i actually do have a non-standard DP device, in addition to 2 standard DP devices. i just followed the instructions in the readme. one important thing is to make sure you select the right data center.


Added support for i3 desktop setup!

I've changed the README just so people understood the fork, so obviously just ignore that and the config too.
But yeah, you can add one more supported desktop management system this way! and thanks for all the great work thus far.

Thank you!


Matrix sharps, matrix flats, subdivision, and link

This PR implements subdivision as a data migration, matrix versions of the sharp and flat operators, an alternative weighting scheme for the sharp operator, and the star, closed star, and link operators from S68 of Munkres' Elementary Algebraic Topology.
Some of these changes may need to get shifted to a different branch. In particular, subdivision cannot yet automatically compute barycenters of simplices until the attrMigr branch of Catlab is merged. Relatedly, refactoring the DualComplex schemas as a data migration that "remembers" e.g. which triangle a supporting dual triangle came from also depends on this functionality.
The star, closed star, and link operators were implemented as higher-level helper functions which will become more useful as 3D operators are becoming supported. This (not-Hodge) star essentially recursively computes cofaces, which is a common pattern in this codebase. e.g. grabbing all tetrahedra around a vertex v is simply star(v).
While developing the matrix version of the sharp operator, it was noted that the sharp of an EForm generated by a constant form would generate a primal vector field with the correct direction, but of incorrect magnitude. In particular, vectors with few neighbors would be too small, and those with many neighbors would be too large. By replacing the weighting denominator in Eq. 5.8.1 from Hirani with | star v | instead of | sigma n |, we successfully recover the original field (up to floating point error). This alternate discrete sharp operator can be selected via dispatching with AltPPSharp. Further, a sharp operator from Desbrun can be selected via DesbrunSharp.
As implemented at time of writing, the matrix-flat multiplied by a vector X of SVectors will return a vector of length 1 SArrays. When X is wrapped in DualVectorField(), this result is automatically reinterpreted to a vector of floats. This fix is a little unusual, but I am not sure how to structure the flat matrix to avoid this.

Due to scheduling, this PR consists of a few disparate features:

Subdivision of non-embedded 1D delta sets w/o point attributes
Star, Closed Star, and Link operators from Munkres. a.k.a. "topological helper functions"
Matrix version of sharp
Matrix version of flat
Alternate weighting scheme for flat

All these features have tests.
When considering which features to merge, we should note:

Only 1D subdivision-as-data-migration is supported. Due to outstanding Catlab PR #823, barycentric and other automatic weighting of the point attribute is blocked. Although the current subdivide functions pass tests, perhaps this feature should live on a different branch for the time being.
Star, Closed Star, and Link are implemented for vertex input only. I believe that the current implementation is helpful as-is, however.
See my previous comment for the return type of the matrix version of flat
The Desbrun weighting scheme is rather poor, and I don't imagine it would be used in practice. However, it may still be nice to offer this for completeness' sake.
Likewise, I believe that the Hirani weighting scheme is inferior to the "Alternate" weighting scheme due to behavior mentioned in my previous comment. It may be best to change the default weighting scheme to "Alternate."

Todo:

[] Use QR decomposition in the new sharp operator

I think you are probably better off with GMRES or PCG because the QR decomp will be dense.

Oh, the QR decomp is just for the tiny (3×3 in R3, 3×2 in R2) matrices. For
each triangle T, I split this tiny matrix into its rows, and place each row
in the corresponding position in the (num-triangles × num-edges) sparse
matrix.
Maybe QR decomposition is not what I want here,  since the application of
the entire operation is still just sparse matrix multiplication.
On Sat, Feb 17, 2024, 12:28 PM James @.***> wrote:

I think you are probably better off with GMRES or PCG because the QR
decomp will be dense.
—
Reply to this email directly, view it on GitHub
https://github.com/AlgebraicJulia/CombinatorialSpaces.jl/pull/59#issuecomment-1950262936,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQYHBYINJO6PUT3DOUZAC53YUDSCJAVCNFSM6AAAAAAZ2N2GFOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNJQGI3DEOJTGY
.
You are receiving this because you were assigned.Message ID:
@.***>


Bucket sidebar shows correct 'Managed By' users

Description

Resolves an issue where bucket sidebar was showing every user in the store with manage instead of the requested bucket.
Also shifted the permission tables to use OnBeforeMount to marginally speed up data loading

Types of changes

Bug fix (non-breaking change which fixes an issue)

Checklist

[ ] I have read the CONTRIBUTING doc
[ ] I have checked that 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)

Further comments

Addresses #95


Don't limit zooming

This'll help low vision users who need to zoom to read smaller print.

@developit any specific reason why we limited it to 5?

we were chatting about it here: https://github.com/developit/preact-boilerplate/issues/192#issuecomment-303413164

Nope! Seems arbitrary, could just remove it.


feat: Use Stringer code generator for static type conversions

There are multiple type mappings where a string is converted into a static type or converse.
Example of mapping strings to types in one function, and then needing to have inverse functionality. https://github.com/ovrclk/akash/pull/657#discussion_r439154127
Generating the inverse lookup code statically with stringer.
TODO

[ ] Add stringer to build tools

Vendor vs local install?

[ ] Mark codepaths needing to be generated
[ ] Tooling to generate static code

@boz, Do I need to generate stringer code manually wherever needed by running stringer command?


Topic/rotates

This PR makes the implementation of RotateLeft / RotateRight for coproducts a simple transposition of the one for HLists.
It also makes the one of HLists safer, with no case that can return a plain wrong type class (the noop* ones could be called with any hlist and any nat).
The added tests for coproduct rotates were suggested by @alexknvl

Many thanks ... merging :-)


Parse queries better for search

Addresses https://github.com/bluesky-social/indigo/issues/578

thank you for cleaning up my junk code @ericvolp12!


Current nesting of C++ API is unintuitive

Presently, dangerous C intrinsics obfuscate the top-line hierarchy of the smart contract API by breaking it into two separate APIs

C API
C++ API

Issues with publicly documenting C API.

Creates unintuitive hierarchy.
Complicates the onboarding of new EOSIO developers
Promotes the use of a potentially dangerous intrinsics for novice smart contract developers.

This has been resolved.


Issue 87 problem with fd isset

Resolves https://github.com/openthread/borderrouter/issues/87
Which is a race condition that causes commissioning to fail.

Done - I need to leave now, the automated tests take about 30 minutes... I'll check back later tonight from home.


[SPARK-49721][BUILD] Upgrade protobuf-java to 3.25.5

What changes were proposed in this pull request?
This PR aims to upgrade protobuf-java to 3.25.5.
Why are the changes needed?
To bring the latest bug fixes.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Pass the CIs.
Was this patch authored or co-authored using generative AI tooling?
No.
Closes #48170

Could you review this PR when you have some time, @viirya ?

Thank you, @viirya .

Thank you, @HyukjinKwon !

Merged to master.


fix(db-postgres): add ON DELETE CASCADE to foreign key constraint of select hasMany relationship

Description
This PR fixes https://github.com/payloadcms/payload/issues/6485.

[x] I have read and understand the CONTRIBUTING.md document in this repository.

Type of change

[x] Bug fix (non-breaking change which fixes an issue)

Checklist:

[x] I have added tests that prove my fix is effective or that my feature works
[x] Existing test suite passes locally with my changes

Hi @DanRibbens ,
This bug seems critical and easy to fix. Cloud you review this PR?
I know payload team is working hard for v3, thanks.

Thank you for the nudge on this @ikenox. Once the tests pass we'll get merged.

@DanRibbens
Thank you for your immediate response!
The failing test says the following.
  MongoServerError: WriteConflict error: this operation conflicted with another operation. Please retry your operation or multi-document transaction.

        at Connection.onMessage (/home/runner/work/payload/payload/node_modules/.pnpm/mongodb@4.17.1/node_modules/mongodb/src/cmap/connection.ts:449:20)
        at MessageStream.<anonymous> (/home/runner/work/payload/payload/node_modules/.pnpm/mongodb@4.17.1/node_modules/mongodb/src/cmap/connection.ts:241:56)
        at processIncomingData (/home/runner/work/payload/payload/node_modules/.pnpm/mongodb@4.17.1/node_modules/mongodb/src/cmap/message_stream.ts:188:12)
        at MessageStream._write (/home/runner/work/payload/payload/node_modules/.pnpm/mongodb@4.17.1/node_modules/mongodb/src/cmap/message_stream.ts:69:5)

This error seems not to be related to the change of this pull request. The same error often occurs on main branch (e.g. this commit)

This has already been done in beta, no additional PR needed.
Thanks for the contribution @ikenox!


Include support for HTTPS POST of data to HTTPS Server (e.g. emoncms.org for heatpumpmonitor.org) #2

As a heat pump installer I am keen to make sure that I can provide the best service to my clients.
I also have some coding experience (not loads, so please go easy on me).
Daikin's StandByMe professional portal gives very limited data to the installer, whilst this project gives excellent coverage, and if implemented, would allow installers to really optimise their installations and up their game.
In order to draw the charts in the same format as heatpumpmonitor.org using the app in openenergymonitor.org, the data needs to be sent as a HTTP POST to an instance of emoncms (normally emoncms.org). I took this one step further and implemented HTTPS, which may be unnecessary, but offers future proofing.
After discussion on openenergymonitor forum, it was pointed out that if an installer wanted to do this, then they also would need a local MQTT broker and a means of forwarding the data as HTTP. This would normally mean a homeassistant device / raspberry PI as well (i.e. a second box of some type), and at this point it's inefficient for a heat pump installer to bring and setup all this kit, and could result in repeat visits to a client to resolve IT issues.
This pull request is to bring in the HTTPS POST directly into the main program, so that the option exists to send Daikin (and other brands) data directly via https post to emoncms and other web servers to allow for the charting to work from this data.
This version is cleaner than my previous pull request as the https.h contains all the https related functions, rather than having them in the mqtt.h file.
I've taken on board the comments from @arc12 (Adam Cooper), thanks for taking the time to review.
I've also added an option in converters.h to have the 'simple' boolean data reported as 1/0 rather than ON/OFF in case the destination requires (this is the case with emoncms.org).
Thanks for your consideration, and also to my co-author Ice and Rock.

This is a really useful addition to the ESPAltherma software. As Phil says, it removes the need for HA/local EmonCMS, and also simplifies processing with the 0/1 Off/On change.
Any chance we could have this accepted??


Overlap matrix multiplication (needs tensor core) and other things like activation (needs cuda core and memory bandwidth) to speed up

Hi thanks for the library! I have a naive thought: We know deep learning forward/backward cannot be parallelized, because you have to compute one operation/layer before computing the next one. But what if we have two batches computed almost parallelly? Then, for example, when our first batch is computing a big matrix multiplication (i.e. tensor core busy, cuda core idle, memory bandwidth idle), maybe we can issue some cuda instructions to compute the activation functions (tensor core idle, cuda core busy, memory bandwidth somehow busy).
Also discussions here: https://forums.developer.nvidia.com/t/concurrent-execution-of-cuda-and-tensor-cores/222985/33?u=ch271828n
Cross-posted: https://github.com/linkedin/Liger-Kernel/issues/341

Oh interesting - maybe CUDA Streams is what you're looking for? Ie you can overlap 2 CUDA operations on 1 GPU. Generally it's not that worth it, but it could work - the main issue though is if using Python CUDA streams, the overhead of Python might make it actually slower - so I guess some sort of C++ CUDA stream orchestration would work.

@danielhanchen Thank you, that looks interesting! Is there any possibilities Unsloth uses this (to speed up)?


Add note on checking release and records counts against data source

Sometimes, there can be issues with scraping data which are not captured in the tables checked in `check_for_errors.ipynb'.
This PR adds a note to check_scope.ipynb to remind analysts to check release and record counts against the partner's data source.

Added in new commit. Good idea!


Maybe we can get a simple cli?

I thought it might be useful. I often have to use large tools like esbuild to simply transform TypeScript to JavaScript without actually doing anything complicated. I would gladly give them up in favor of this library. On the one hand, I think it is an interesting development, but I would not be inclined to extend the current API. I think it is complete, and that is great. If I were to solve this problem, I would create a separate  ts-blank  package that would include a very simple set of CLI-specific features, as well as a loader for Node.js. Yes, the current solution already contains a loader, but I would conceptually separate it. For now, these are just thoughts; I wanted to share them and learn yours.
Usage: ts-blank [options]

Options:
  --tsconfig    Path to the tsconfig.json

We can use the typescript --showConfig and access files, compilerOptions.rootDir, compilerOptions.outDir fields. The compilerOptions.allowImportingTsExtensions could be usefull too.

Hi @vanyauhalin!

I would create a separate  ts-blank package

Yeah, I completely agree. One goal of ts-blank-space is to remain focused on having one responsibility allowing other packages to wrap it and add extra functionality such as a CLI or bundler integrations.


chore: export contentHash under utils namespace

We rely heavily on decodeContentHash and encodeContentHash in our project.

Hey @adamazad thanks for your submission.
You can actually import functions from utils like this:
import { encodeContenthash } from '@ensdomains/ensjs/utils/contentHash'
Will close for now, let us know if you have any problems with this.


Add OLMoE checkpoints and run config

This PR adds the intermediate checkpoints and the run config for the OLMoE model. Code for OLMoE is not in main yet and will be a separate PR (probably by @Muennighoff).

fastdclm data files are not done uploading from weka to https://olmo-data.org but all the other checkpoints and data are done.

Data upload is complete


Handle flash socket policy requests, with test

My last pull request was out of date and didn't include a test.  This one is based off the latest source, and includes a test.

Great! Thanks for adding the feature.

Thanks for including!


Enable Hosted Content for ios In App Purchases

Feature Request
The In App Purchase support in Spaceship is almost feature complete. The one thing that I'm missing is the ability to enable 'hosted content' within the IAP's. This isn't a well spoken about feature, but some documentation is still very much available on the older docs here, in the newer docs here (under the Host non-consumables with Apple section), and within my app and its IAP's.
This is also something I have brought up before under Issue #9100 but was not able to comment on it any longer, so I opened up a new feature suggestion.
Motivation Behind Feature
This is a basic feature of IAP that Apple provides.
Feature Description
When creating a new IAP through Spaceship, a user should be able to specify whether they want their content hosted by Apple. If so, they should have the option to point to a local file that will be delivered to Apple's servers. They should also be able to update the IAP's settings by either updating the content that is hosted by Apple, or disabling the 'hosted' option.
Alternatives or Workarounds
This is currently a manual process.
Actions:
I am currently interested in tackling this issue - would the Fastlane team like something like this implemented in the core base? Or should I just implement a local action/plug in?

This is a feature request that I'm proposing contributing myself, so I'm not sure how fastlane env helps, but to appease fastlane-bot:
🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.14.3

Ruby
2.4.1

Bundler?
true

Git
git version 2.13.1

Installation Source
~/.rvm/gems/ruby-2.4.1/bin/fastlane

Host
Mac OS X 10.14.3 (18D109)

Ruby Lib Dir
~/.rvm/rubies/ruby-2.4.1/lib

OpenSSL Version
OpenSSL 1.1.0f  25 May 2017

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
10.1

System Locale

Variable
Value

LANG
en_US.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
require 'fileutils'
fastlane_require 'xcodeproj'

skip_docs # Do not create fastlane/README.txt

# Test and Validate

desc "Runs the unit tests and other verifications for the fastlane repo"
lane :test do |options|
  validate_repo
end

desc "Verifies all tests pass and the current state of the repo is valid"
lane :validate_repo do
  lint_source
  execute_tests
  validate_docs
  ensure_tool_name_formatting
  ensure_code_samples
  ensure_special_docs_code_samples
  ensure_code_snippets
  ensure_actions_config_items_formatting
end

desc "Verifies source code is in a good state"
lane :lint_source do
  # Verifying that no debug code is in the code base
  #
  ensure_no_debug_code(text: "binding.pry", extension: ".rb", exclude: "playground.rb", exclude_dirs: ["\.bundle"]) # debugging code
  ensure_no_debug_code(text: "# TODO", extension: ".rb", exclude_dirs: ["\.bundle"]) # TODOs
  ensure_no_debug_code(text: "now: ", extension: ".rb", exclude_dirs: ["\.bundle"]) # rspec focus
  ensure_no_debug_code(text: "<<<<<<<", extension: ".rb", exclude_dirs: ["\.bundle"]) # Merge conflict

  # spaceship and credentials_manager don't have access to fastlane_core
  ensure_no_debug_code(text: " UI\\.", path: "spaceship/lib", extension: ".rb", exclude_dirs: ["\.bundle"])
  ensure_no_debug_code(text: " UI\\.", path: "credentials_manager/lib", extension: ".rb", exclude_dirs: ["\.bundle"])

  rubocop

  Dir.chdir("..") do
    # Verify shell code style
    if FastlaneCore::Helper.mac?
      sh('find -E . -regex ".*\.(sh|bash)" -not -name "Pods-*" -name ".bundle" -exec shellcheck {} +')
    elsif !FastlaneCore::Helper.windows?
      sh('find . -regextype posix-egrep -regex ".*\.(sh|bash)" -not -name "Pods-*" -name ".bundle" -exec shellcheck {} +')
    end
  end
end

desc "Measure the execution time of the --help command"
lane :benchmark_help_command do
  Dir.chdir("..") do
    # install gnomon if not installed yet
    Actions.sh("echo foo | gnomon", log: true, error_callback: lambda { |result|
      if Helper.windows? || Helper.mac?
        sh('npm install -g gnomon')
      else
        # install npm if not installed yet
        Actions.sh("echo foo | npm", log: true, error_callback: lambda { |result2|
          sh('curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -')
          sh('sudo apt-get install -y nodejs')
        })
        sh('sudo npm install -g gnomon')
      end
    })
    cmd = Helper.windows? ? "cd bin && fastlane --help | gnomon" : "bin/fastlane --help | gnomon"
    3.times do
      content = sh(cmd, log: false)
      content.each_line do |line|
        UI.message("🏎 '#{line.strip}'") if ["Total", "real", "user", "sys"].any? { |word| line.include?(word) }
      end
    end
  end
end

desc "Runs the tests"
lane :execute_tests do
  version = local_version # has to be outside of the `Dir.chdir`

  # Verifying the --help command
  Dir.chdir("..") do
    cmd = Helper.windows? ? "cd bin && fastlane --help" : "PAGER=cat bin/fastlane --help"
    content = sh(cmd)
    ["--version", "https://fastlane.tools", "fastlane"].each do |current|
      UI.user_error!("--help missing information: '#{current}'") unless content.include?(current)
    end
  end

  benchmark_help_command

  Dir.chdir("..") do
    # Install the bundle and the actual gem
    sh("bundle check || bundle install")
    sh("rake install")

    # Ensure the file size of the fastlane gem is below 1 MB
    size_in_mb = File.size("pkg/fastlane-#{version}.gem").to_f / (1024 * 1024)
    UI.user_error!("fastlane gem is above 1 MB, make sure no additional resources are included by mistake") if size_in_mb > 1

    # Run the tests
    #
    sh("bundle exec rake test_all")
  end
end

# Release Management

desc "Increment the version number of this gem, after generating new Swift API"
lane :bump do |options|
  verify_env_variables
  ensure_git_branch(branch: "master")
  ensure_git_status_clean

  github_api_token = ENV["FL_GITHUB_RELEASE_API_TOKEN"]
  UI.user_error!("Please provide a GitHub API token using `FL_GITHUB_RELEASE_API_TOKEN`") if github_api_token.to_s.length == 0
  paths_for_commit = []

  version_file_path = "./fastlane/lib/fastlane/version.rb"

  # Verify everything is in a consistent state
  latest_version = current_version
  local_version = version_get_podspec(path: version_file_path, require_variable_prefix: false)
  UI.user_error!("Version on RubyGems doesn't match local repo: #{latest_version} != #{local_version}") if latest_version != local_version

  changelog_text = show_changelog

  bump_type ||= 'minor' if prompt(text: "New feature, method or API?", boolean: true)
  bump_type ||= 'patch'

  slug = "fastlane/fastlane"
  new_version = version_bump_podspec(path: version_file_path, bump_type: bump_type, require_variable_prefix: false)

  # Everything looks good, let's generate the Swift API
  generated_files = generate_swift_api(fastlane_version: new_version)

  # Alright, now let's update our FastlaneSwiftRunner manifest
  generated_files << generate_fastlane_swift_runner_manifest

  # Add all changed files to the version bump commit
  paths_for_commit += generated_files

  # Add version file path to change set
  paths_for_commit << version_file_path

  sh("bundle exec rake generate_team_table")
  paths_for_commit << "README.md"

  sh("bundle exec rake update_gem_spec_authors")
  paths_for_commit << "fastlane.gemspec"

  sh("git checkout -b 'version-bump-#{new_version}'")
  commit_message = "Version bump to #{new_version}"

  git_commit(path: paths_for_commit,
             message: commit_message)
  push_to_git_remote

  pr_body = ["Auto-generated by fastlane 🤖"]
  pr_body << "**Changes since release '#{latest_version}':**"
  pr_body << changelog_text
  pr_url = create_pull_request(
    api_token: github_api_token,
    repo: slug,
    title: commit_message,
    body: pr_body.join("\n\n")
  )

  if ENV['SLACK_URL']
    slack(
      channel: "action",
      default_payloads: [],
      message: "Version bump: #{pr_url} ✨",
      payload: {}
    )
  end

  # Revert to master branch
  sh("git checkout master")
end

desc "Generate the Swift api and test it"
lane :generate_swift_api do |options|
  Fastlane::VERSION = options[:fastlane_version]
  require "../fastlane/lib/fastlane/swift_fastlane_api_generator.rb"
  swift_generator = Fastlane::SwiftFastlaneAPIGenerator.new
  generated_files = swift_generator.generate_swift
  UI.success("Done generating fastlane.swift API, ensuring it builds")
  gym(
    project: File.expand_path("swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj"),
    skip_package_ipa: true
  )
  sh("rm ../FastlaneRunner")
  generated_files
end

desc "Generate the FastlaneSwiftRunner project manifest"
lane :generate_fastlane_swift_runner_manifest do |options|
  # Don't attempt to upgrade config files, like Fastfile.swift, Deliverfile.swift, etc...
  non_upgrade_set = TOOL_CONFIG_FILES.map { |tool_name| "#{tool_name}.swift" }.to_set

  swift_folder = File.expand_path("swift")
  runner_project_path = File.expand_path(File.join(swift_folder, "/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj"))
  project = Xcodeproj::Project.open(runner_project_path)

  swift_files = project.files
                       .reject { |file| file.name.nil? }
                       .reject { |file| non_upgrade_set.include?(file.name) }
                       .select { |file| file.name.end_with?(".swift") }

  # It is assumed that all Swift files we're including are contained in the root group, or 1 group deep
  swift_filenames_to_group_name = swift_files.each_with_object({}) { |file, object| object[file.name] = file.parent.name }

  manifest_path = File.expand_path(File.join(swift_folder, "/upgrade_manifest.json"))
  File.write(manifest_path, swift_filenames_to_group_name.to_json)

  UI.success("Done generating FastlaneSwiftRunner project manifest")
  manifest_path
end

desc "Does everything that's needed for a release"
desc "This includes running tests and verifying the GitHub release"
lane :release do
  verify_env_variables
  slack_train_start(distance: 2,
                       train: "🚀",
           reverse_direction: true,
                        rail: "✨")

  update_fastlane
  slack_train

  # Git verification
  #
  ensure_git_status_clean
  ensure_git_branch(branch: 'master')
  git_pull

  validate_repo

  # Verifying RubyGems version
  #
  version = local_version
  old_version = current_version
  puts("Deploying #{version}")
  if Gem::Version.new(version) <= Gem::Version.new(old_version)
    UI.user_error!("Version number #{version} was already deployed")
  end

  # Then push to git remote
  #
  push_to_git_remote

  # Preparing GitHub Release
  #
  github_release = get_github_release(url: "fastlane/fastlane", version: version)
  if (github_release || {}).fetch('body', '').length == 0
    show_changelog(old_version: old_version)

    title = prompt(text: 'Title: ')
    description = prompt(text: "Please enter a changelog (make sure to rephrase changes to make it easy to understand, and remove non-important changes that don't affect the end-user): ",
                         multi_line_end_keyword: "END")

    github_release = set_github_release(
      repository_name: "fastlane/fastlane",
      name: [version, title].join(" "),
      tag_name: version,
      description: description,
      is_draft: false
    )

    # Actual release of the gem
    #
    sh("gem push ../pkg/fastlane-#{version}.gem")

    release_url = github_release['html_url']

    message = [title, description, release_url].join("\n\n")
    add_fastlane_git_tag(tag: "fastlane/#{version}", message: message)
  end

  # After publishing
  #
  if ENV['SLACK_URL']
    release_notes = github_release['body']
    # markup - turn github references into links
    release_notes.gsub!(/\(#([0-9]+)\)/, '(<https://github.com/fastlane/fastlane/issues/\1|#\1>)')
    slack_message = "Successfully released [fastlane #{version}](#{release_url}) :rocket:"
    slack(
      channel: "releases",
      default_payloads: [],
      message: slack_message,
      payload: {
        "New" => release_notes
      }
    )
    slack(channel: "action", default_payloads: [], message: slack_message)
  end

  clubmate

  puts("You can now tweet:".green)
  releases_url = "https://github.com/fastlane/fastlane/releases/tag/#{version}"
  puts("[fastlane] #{github_release['name']} #{releases_url}")

  send_mac_app_ci_reminder

  update_docs
  slack_train
end

desc "Notifies Fabric Slack to run CI Job for Mac App"
private_lane :send_mac_app_ci_reminder do
  if ENV['FABRIC_SLACK_URL']
    slack(
      slack_url: ENV['FABRIC_SLACK_URL'],
      channel: 'deployment-tools',
      default_payloads: [],
      message: "Please run the Fastlane Mac App Package CI job in TeamCity\n#{ENV['FABRIC_MAC_APP_CI_JOB_URL']}"
    )
  end
end

desc "Print out the changelog since the last tagged release and open the GitHub page with the changes"
lane :show_changelog do |options|
  old_version = options[:old_version] || current_version

  changes = sh("git log --pretty='* %s via %aN' #{old_version}...HEAD --no-merges ..", log: $verbose).gsub("\n\n", "\n")
  changes.gsub!("[WIP]", "") # sometimes a [WIP] is merged

  github_diff_url = "https://github.com/fastlane/fastlane/compare/#{old_version}...master"
  sh("open #{github_diff_url}")

  puts("Changes since release #{old_version}:\n\n#{changes.cyan}")
  changes # return the text without the modified colors
end

desc "Add a git tag in the fastlane repo for this release"
private_lane :add_fastlane_git_tag do |options|
  `git tag -am #{options[:message].shellescape} #{options[:tag].shellescape}`
  push_git_tags
end

# Docs

desc "Validates the docs still are good"
lane :validate_docs do
  # Validate docs content
  ensure_tool_name_formatting
  ensure_code_samples
  ensure_special_docs_code_samples
  ensure_code_snippets
  # (Validate action documentation)
  ensure_actions_config_items_formatting

  # Test if generating the docs is successful
  clone_docs do
    generate_markdown_docs(target_path: ".")
  end

  # Verify docs are still working
  verify_docs
end

desc "Makes sure the tests on https://docs.fastlane.tools still work with the latest version"
lane :verify_docs do
  clone_docs do
    Bundler.with_clean_env do
      puts(`sed -i -e "s/activate_bin_path/bin_path/g" $(which bundle)`) # workaround for bundler https://github.com/bundler/bundler/issues/4602#issuecomment-233619696
      sh("bundle install")
      sh("bundle exec fastlane test skip_building:true") # skip_building since we don't have a proper python environment set up
    end
  end
end

desc "Update the actions.md on https://docs.fastlane.tools"
desc "This will also automatically submit a pull request to fastlane/docs"
lane :update_docs do |options|
  debug = options[:debug]

  unless debug
    verify_env_variables
    ensure_actions_config_items_formatting
  end

  template_path = File.expand_path("./assets/render_plugin.md.erb")
  clone_docs(debug: debug) do
    plugin_scores_cache_path = File.expand_path("./plugin_scores_cache.yml")
    docs_path = generate_markdown_docs(target_path: ".")
    yml_path = File.expand_path("./mkdocs.yml")
    actions_md_path = File.expand_path(File.join(docs_path, "docs/actions.md"))
    action_docs = Dir[File.join(docs_path, "docs", "actions", "*")].collect do |current|
      File.expand_path(current) # to make sure we commit the change
    end

    # Copy over the custom assets
    custom_action_docs_path = "lib/fastlane/actions/docs/"
    custom_assets = Dir[File.join(Fastlane::ROOT, custom_action_docs_path, "assets", "*")].collect do |current_asset_path|
      current_output_path = File.join("docs/img/actions", File.basename(current_asset_path))
      FileUtils.cp(current_asset_path, current_output_path)

      File.expand_path(current_output_path) # to make sure we commit the change
    end

    unless options[:skip_bundle_update]
      Bundler.with_clean_env do
        sh("bundle update")
      end
    end

    if `git status --porcelain`.length == 0
      UI.success("No changes in the actions.md ✅")
    else
      # Create a new branch
      sh("git checkout -b 'update-actions-md-#{Time.now.to_i}'") unless debug
      plugins_path = "docs/plugins/available-plugins.md"
      unless options[:skip_plugin_scores]
        plugin_scores(template_path: template_path,
                        output_path: plugins_path,
                         cache_path: plugin_scores_cache_path)
      end

      next if debug

      Dir.chdir("fastlane") do # this is an assumption of fastlane, that we have to .. when shelling out
        # Commit the changes
        changes_to_commit = [plugin_scores_cache_path, actions_md_path, "Gemfile.lock", plugins_path, yml_path] + action_docs + custom_assets
        git_add(path: changes_to_commit)
        git_commit(path: changes_to_commit,
                message: "Update docs for latest fastlane release (actions.md, available-plugins.md) 🚀")
        # Push them to the git remote
        push_to_git_remote

        # Submit the pull request
        pr_url = create_pull_request(
          api_token: ENV["FL_GITHUB_RELEASE_API_TOKEN"],
          repo: "fastlane/docs",
          title: "[Bot] Update docs for latest fastlane release (actions.md, available-plugins.md) 🚀",
          body: "Auto-generated by _fastlane_ bot 🤖"
        )
        UI.success("Successfully submitted a pull request to fastlane/docs: #{pr_url} 🚀")
      end
    end
  end
end

def clone_docs(debug: false)
  if debug
    clone_url = ENV['FASTLANE_DOCS_CLONE_URL'] || "../../docs"

    Dir.chdir(clone_url) do
      yield
    end
  else
    require 'tmpdir'
    git_url = ENV['FASTLANE_DOCS_GIT_URL'] || "https://github.com/fastlane/docs"

    Dir.mktmpdir("fl_clone") do |tmp_dir|
      Dir.chdir(tmp_dir) do
        sh("git clone #{git_url} --depth=1")
        Dir.chdir("docs") do
          yield
        end
      end
    end
  end
end

def generate_markdown_docs(target_path: nil)
  require 'fastlane/documentation/markdown_docs_generator'
  Fastlane::MarkdownDocsGenerator.new.generate!(target_path: File.expand_path(target_path))
  return target_path
end

# Exception Handling

error do |lane, exception|
  if ENV['SLACK_URL']
    slack(channel: "testing", message: exception.to_s, success: false)
  end
  slack_train_crash
end

# Helper

desc "Ensure all the requirement environment variables are provided"
desc "this way the deployment script will fail early (and often)"
private_lane :verify_env_variables do
  ["GITHUB_USER_NAME", "GITHUB_API_TOKEN"].each do |variable|
    next if ENV[variable].to_s.length > 0
    UI.user_error!("Missing ENV variables #{variable}, make sure to provide one for fastlane to be successful")
  end
  UI.user_error!("You're not logged in RubyGems. Log in using `gem push` if using RubyGems < 2.7.0 or `gem signin` if using RubyGems >=2.7.0") unless File.file?(File.expand_path("~/.gem/credentials"))
end

desc "Get the local version number per version.rb"
private_lane :local_version do
  require_relative "../fastlane/lib/fastlane/version.rb"

  Fastlane::VERSION
end

desc "Get the version number of the last release"
private_lane :current_version do
  puts("Checking the latest version on RubyGems")
  download(url: "https://rubygems.org/api/v1/gems/fastlane.json")["version"]
end

desc "Ensure the correct formatting for the fastlane tools"
private_lane :ensure_tool_name_formatting do
  UI.message("🕗  Verifying tool name formatting...")
  require 'fastlane/tools'
  errors = []
  Dir.chdir("..") do
    Dir["**/*.md"].each do |path|
      content = File.read(path)
      Fastlane::TOOLS.each do |tool|
        errors << "Use _#{tool}_ instead of `#{tool}` to mention a tool in the docs in '#{path}'" if content.include?("`#{tool}`")
        errors << "Use _#{tool}_ instead of `_#{tool}_` to mention a tool in the docs in '#{path}'" if content.include?("`_#{tool}_`")
        errors << "Use [_#{tool}_] instead of [#{tool}] to mention a tool in the docs in '#{path}'" if content.include?("[#{tool}]")
        errors << "Use <em>#{tool}<em> instead of <code>#{tool}</code> to mention a tool in the docs in '#{path}'" if content.include?("<code>#{tool}</code>")
        if content.include?("_#{tool.to_s.capitalize}_") || content.include?("`#{tool.to_s.capitalize}`")
          errors << "fastlane tools have to be formatted in lower case: #{tool} in '#{path}'"
        end
      end
    end
  end
  errors.each { |a| UI.error(a) }
  UI.user_error!("Invalid formatting of one of the fastlane tools") unless errors.empty?
  UI.success("✅  fastlane tools formatting is correct")
end

# Run the code samples, yo
private_lane :ensure_code_samples do
  UI.message("🕗  Verifying all action code samples work with the current fastlane release")
  all_content = ""
  count_actions = 0
  ActionsList.all_actions do |action|
    all_content += "```ruby\n"
    all_content += action.example_code.map { |code| code.gsub(/^\s+/, '') }.join("\n") if action.example_code
    all_content += "\n```"
    count_actions += 1
  end
  test_sample_code(content: all_content) # to not have to call the action 200 times
  UI.success("✅  All fastlane action code samples (from #{count_actions} actions) work as expected")
end

# Run the other code samples, yo
private_lane :ensure_special_docs_code_samples do
  UI.message("🕗  Verifying all action special docs (`fastlane/lib/fastlane/actions/docs`) code samples work with the latest fastlane release")
  all_content = ""
  files = Dir["../fastlane/lib/fastlane/actions/docs/*.md"]
  files.each do |special_docs_page_path|
    all_content += File.read(special_docs_page_path)
  end
  test_sample_code(content: all_content) # to not have to call the action 200 times
  UI.success("✅  All fastlane action special docs code samples (from #{files.length} files) work as expected")
end

private_lane :ensure_code_snippets do
  UI.message("🕗  Verifying all code snippets are correctly formatted")

  shell_commands_start = '((bundle|fastlane)[ ]|[A-Z_]+=)'
  errors = []

  require 'fastlane/documentation/markdown_docs_generator'

  Fastlane::MarkdownDocsGenerator.new.actions_md_contents.each do |action_name, content|
    errors << "Use '```no-highlight ↵ <code snippet> ↵ ```' instead of '```<language> ↵ <code snippet> ↵ ```' for code snippets for action '#{action_name}'" if content =~ /```(?<!no-higlight)\w+\s*#{shell_commands_start}/
    errors << "Use '```no-highlight ↵ <code snippet> ↵ ```' instead of '    <code snippet>' for code snippets for action '#{action_name}'" if content =~ /^[ ]{4}#{shell_commands_start}/
  end

  errors.each { |a| UI.error(a) }

  UI.user_error!("Invalid formatting of one of the code snippets") unless errors.empty?
  UI.success("✅  All code snippets are formatted as expected")
end

private_lane :ensure_actions_config_items_formatting do
  UI.message("🕗  Verifying actions' config items formatting...")

  errors = []

  require 'fastlane_core/configuration/config_item'

  ActionsList.all_actions do |action|
    next if action.available_options.nil?

    action.available_options.each do |option|
      next unless option.kind_of?(FastlaneCore::ConfigItem)

      errors << "Remove the '\\n' from the config item ':#{option.key}' of the action '#{action.action_name}'" if option.description && option.description =~ /\n|\\n/
    end
  end

  errors.each { |a| UI.error(a) }

  UI.user_error!("Invalid formatting of one of the actions' config items") unless errors.empty?
  UI.success("✅  fastlane actions' config items formatting is correct")
end

No Appfile found
fastlane gems

Gem
Version
Update-Status

fastlane
2.116.0
🚫 Update available

Loaded fastlane plugins:

Plugin
Version
Update-Status

fastlane-plugin-ruby
0.1.3
✅ Up-To-Date

fastlane-plugin-clubmate
0.1.0
✅ Up-To-Date

fastlane-plugin-slack_train
0.2.0
✅ Up-To-Date

Loaded gems

Gem
Version

did_you_mean
1.1.0

executable-hooks
1.3.2

bundler-unload
1.0.2

rubygems-bundler
1.4.4

bundler
1.16.4

io-console
0.4.6

psych
2.2.2

rake
11.3.0

CFPropertyList
3.0.0

public_suffix
2.0.5

addressable
2.5.2

ast
2.4.0

atomos
0.1.3

babosa
1.0.2

debug_inspector
0.0.3

binding_of_caller
0.8.0

builder
3.2.3

byebug
10.0.2

claide
1.0.2

colored2
3.1.2

cork
0.3.0

nap
1.1.0

open4
1.3.4

claide-plugins
0.9.2

coderay
1.1.2

colored
1.2

highline
1.7.10

commander-fastlane
4.4.6

json
2.1.0

docile
1.3.1

simplecov-html
0.10.2

simplecov
0.16.1

tins
1.20.2

term-ansicolor
1.7.1

thor
0.19.4

coveralls
0.8.22

safe_yaml
1.0.4

crack
0.4.3

multipart-post
2.0.0

faraday
0.15.4

faraday-http-cache
1.3.1

git
1.5.0

kramdown
1.17.0

sawyer
0.8.1

octokit
4.13.0

unicode-display_width
1.4.1

terminal-table
1.8.0

danger
4.3.5

ox
2.10.0

danger-junit
0.7.4

declarative
0.0.10

declarative-option
0.1.0

diff-lcs
1.3

digest-crc
0.4.1

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20180417

dotenv
2.6.0

emoji_regex
1.0.1

excon
0.62.0

fakefs
0.8.1

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

faraday_middleware
0.13.1

fastimage
2.1.5

gh_inspector
1.1.3

jwt
2.1.0

memoist
0.16.0

multi_json
1.13.1

os
1.0.0

signet
0.11.0

googleauth
0.6.7

httpclient
2.8.3

mime-types-data
3.2018.0812

mime-types
3.2.2

uber
0.1.0

representable
3.0.4

retriable
3.1.2

google-api-client
0.23.9

google-cloud-env
1.0.5

google-cloud-core
1.3.0

google-cloud-storage
1.16.0

mini_magick
4.5.1

multi_xml
0.6.0

plist
3.5.0

rubyzip
1.2.2

security
0.1.3

naturally
2.2.0

simctl
1.6.5

slack-notifier
2.3.2

terminal-notifier
1.8.0

tty-screen
0.6.5

tty-cursor
0.6.0

tty-spinner
0.9.0

word_wrap
1.0.0

nanaimo
0.2.6

xcodeproj
1.8.0

rouge
2.0.7

xcpretty
0.3.0

xcpretty-travis-formatter
1.0.0

fastlane-plugin-clubmate
0.1.0

fastlane-plugin-ruby
0.1.3

fastlane-plugin-slack_train
0.2.0

hashdiff
0.3.8

interception
0.5

method_source
0.9.2

netrc
0.11.0

parallel
1.13.0

parser
<IP_ADDRESS>

powerpack
0.1.2

pry
0.12.2

pry-byebug
3.6.0

pry-rescue
1.5.0

pry-stack_explorer
<IP_ADDRESS>

rack
1.6.11

rack-protection
1.5.5

rainbow
2.2.2

rb-readline
0.5.5

rest-client
2.0.2

rspec-support
3.5.0

rspec-core
3.5.4

rspec-expectations
3.5.0

rspec-mocks
3.5.0

rspec
3.5.0

rspec_junit_formatter
0.2.3

ruby-progressbar
1.10.0

rubocop
0.49.1

rubocop-require_tools
0.1.2

tilt
2.0.9

sinatra
1.4.8

webmock
2.3.2

xcode-install
2.5.0

xcov
1.4.3

yard
0.9.18

generated on: 2019-03-15

@max-ott Does this make sense in spaceship?

@janpio Sounds like a reasonable addition. @tomershvueli any recommendations/pull requests to get this going? 😇

Excellent! @max-ott none yet, I wanted to see if this is something you'd be interested in. I started working on a fork of mine but hit a snafu in the meantime. Is there any documentation available on running fastlane, and more specifically spaceship locally?

@tomershvueli Easiest way is https://github.com/fastlane/fastlane/tree/master/spaceship and especially https://github.com/fastlane/fastlane/blob/master/spaceship/docs/AppStoreConnect.md should give you some ideas how to run specific methods.
If you want to run a local version of the gem, work with a gemfile looking something like this:
gem "fastlane", path: "/Users/dev/local-dev/fastlane" // link to your local fork of fastlane
Then simply run bundle exec irb and then this version of spaceship/fastlane will be run.

Awesome, I'll give that a whirl and report back when I have some good progress.

@max-ott I was able to make some progress here but get stuck when trying to use Charles for sniffing packets when uploading the actual 'hosted content'. Do you have experience w/ Charles and are able to help me through this? Or do you know someone else I can get in touch with?

@tomershvueli you might want to look into the code of https://github.com/fastlane/fastlane/pull/14412 I believe all uploading of files is done through the same URL/API (for resolution center, screenshots, attachements etc) so maybe this gives you some hints.
As for Charles: Make sure that you have SSL enabled and active for any *.apple.com domains. Then you should see the requests and answers when using the browser.

If you have any Charles specific question, just post them here and mention me. But as @max-ott said, being able to look into the SSL based requests should be enough.

Thanks for the input!
Here's where I stand. As from this image, I think all is well in terms of SSL Proxy.

I was able to validate my app's IPA properly through this. However, when I try to upload my In App Purchase, I come across these errors in XCode.

And this is what I see in Charles:

Without knowing what's going behind the scenes, I'm not sure where to upload the In App Purchase to through the du_client.

You need to configure your OS to trust the Charles root certificate. That should be in the Help menu of Charles somewhere. (By the way: "Sequence" view is usually more convenient for these things as it shows a timeline of the requests)

I believe I have already done that. You can see the certificate here:

As well as if the certificate weren't properly installed, I probably wouldn't have been able to see the contents in the first image I uploaded in my previous comments, right?

Possible. But different software uses different sources - I could probably help you further with this on Windows, but not on macOS unfortunately.
Can @max-ott help maybe?
Might help if you shortly describe the individual steps you are trying to do @tomershvueli.

Sure!
So I first made sure to install the Charles Root Certificate.
In Xcode, I 'Validated' my iOS app to make sure that I can see traffic in Charles going out. This works as you can see in the first screenshot I posted.
Then, to deploy 'hosted content' I followed this guide. So once I archived the proper target, I tried to distribute it. However, when I try that, it fails as seen in the next 2 screenshots I posted. Note that when Charles is not open, I am able to properly upload the hosted content to iTunes Connect and it shows up find. I'm wondering if somehow Xcode verifies that it's using a proper Apple SSL cert before it does any uploads? How does fastlane get around that with regular app uploads? Or, if you try to 'distribute' a regular app's IPA with Charles open, does it succeed?

I'm wondering if somehow Xcode verifies that it's using a proper Apple SSL cert before it does any uploads?

Possible, but usually that is done via the machines registered root certs.

How does fastlane get around that with regular app uploads?

Fastlane uploads apps via iTMSTransporter, a command line tool that comes with Xcode. But that is a different thing than what you are trying to debug here.

Or, if you try to 'distribute' a regular app's IPA with Charles open, does it succeed?

"Charles open" doesn't do anything to fastlane, you have to configure Charles as a proxy to use as well. But yes, afaik it works anyway. No idea about what Xcode or Application Loader does.
I unfortunately don't have the details on how the other "upload content" calls were reverse engineered that Fastlane recreates.

@janpio turns out the answer was hidden in your reply! I hadn't heard of iTMSTransporter before, but after playing around with it some, I was able to successfully push an IAP's hosted content to iTunes Connect through it. I now plan on updating the itunes_transporter.rb file, instead of the du_client, and adjust that to be able to push IAP's content as well as app builds.

Any progress on this feature since the last comment?

Unfortunately, not yet. Is this something you're interested in using or implementing?


Macbook pro trackpad force touch does not work.

Could you elaborate more on this?

on Safari, force touching  a word can open a dictionary. I think the reason is an app is wrapped by Chromium which does not support force touch.

I don't have a force touch trackpad available, but when I turn on Look up & data detectors with Tap With three fingers, under System Preferences > Trackpad, it works for me. Is this simply problem simply for force touch?


GDPR compliance

Dear indy team, even though this not an issue, I want to ask if you have investigated your mechanisms according to GDPR. It wood be very helpful for any application with users in the EU considering to integrate indy.
Thanks!

This has been a subject of a lot of discussion in the Identity WG and other places.  Marta Piekarska is leading a collaborative effort to build out a paper on how Blockchains in general can address GDPR requirements here:
https://docs.google.com/document/d/1wnRYOZrGZS6h_-PnJRaq1pAc35GrfGUZcXh46sTHdFQ/edit#heading=h.xlkpssu5kfbq
Certainly we think that Indy's approach has many advantages when it comes to giving a user the ability to manage data sharing and meet GDPR requirements, but I am not aware of a paper that specifically addresses how Indy or an instance of Indy like Sovrin addresses GDPR requirements, but I could see how we could build out something very useful, and it would be a welcome contribution.

I wrote an article about the greatest challenge, Right to Erasure: https://journal.tiiqu.com/open-questions-about-gdpr-compliance-in-the-context-of-blockchain-technologies-55f51860b048
While many properties of blockchain are great, this one is the most difficult to solve. It means that no personal data can be uploaded to the chain itself, only verifiers of personal data. The best way to link the verifier to the personal data would be ZKPs, simple hashes are considered pseudonymization, not anonymization, even though this opinion is questionable from a technical point of view (it is equivalent to say that good hashing can be backlinked or well encrypted data isn't private, the hacking procedures are  the same...).
So if you implement ZKPs as verifiers on the legder for personal offchain identity data, then you will be in a great position:-)

We are using Jira to track issues now, please use this Jira IS-996 ticket for any further discussion.


Revert "Merge pull request #7220 from hlindberg/pup-9294_report-illeg…

…al-3x-function-defining-methods"
This reverts commit ff88975f06c7ac5931d5b9894bbdb9ac7560ea8d, reversing
changes made to e7c3983cd82f16c01cf98f601f993f7083b918e9.

How was this found?

@Magisus Sorry should have linked the failure. PEZ is failing with this change.

I have a PR up with a fix for the problem. https://github.com/puppetlabs/puppet/pull/7284

Due to the failing pipelines and the pending release I am going to push this revert through so we might get green 6.0/master testing through this evening.


feat(rest): added support for custom controllers

Signed-off-by: Jan<EMAIL_ADDRESS>

Codecov Report

Merging #39 (20892bc) into main (285c365) will decrease coverage by 0.10%.
The diff coverage is 83.33%.

@@            Coverage Diff             @@
##             main      #39      +/-   ##
==========================================
- Coverage   84.98%   84.88%   -0.11%
==========================================
  Files          19       19
  Lines         393      397       +4
  Branches       70       72       +2
==========================================
+ Hits          334      337       +3
- Misses         59       60       +1

Impacted Files
Coverage Δ

packages/rest/src/server.ts
87.50% <83.33%> (-2.50%)
:arrow_down:

Continue to review full report at Codecov.

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


Cross-file "problems" never clear (until vscode restart)

Any symbol resolution problems that are cross-file are never cleared in Problems (or the editor squigglies) until vscode is restarted. (Save all & full rebuild does not help.)

I'm completely new to using Ionide for F# projects (have been using it to write/run FSX scripts for a while), but I'll throw in my two cents:
I've had the same issue when the project is not part of a solution. Seems I can work around it by adding the project to a solution and re-opening (dotnet new sln to create the .sln file, then dotnet sln [path to .sln file] add [path to .fsproj file]). Sometimes I have to rebuild the solution, then restart OmniSharp (both of these via VS Code Command Palette). Sometimes I can get away with deleting the solution file afterward, sometimes not. In any case, the squiggles don't go away until I've edited the file (e.g. insert a space somewhere).
Could this be related to https://github.com/ionide/ionide-vscode-fsharp/issues/917 ?
In case it would be helpful, here's some diagnostic info about my machine:
Machine infos

Operating system: Windows_NT
Arch: x64
VSCode: 1.41.1
Runtime: netcore
Dotnet version: 3.1.100
MSBuild version:

Microsoft (R) Build Engine version 4.8.3752.0
[Microsoft .NET Framework, version 4.0.30319.42000]
Copyright (C) Microsoft Corporation. All rights reserved.


fix: More reliable handling of the edge case for wrapped lines

I discovered that NVDA was unable to move forward to the next line of text when the current line was wrapped (i.e. ended with a soft line break). This revealed some flaws in my current approach to setting the bias (also called affinity) for text positions on the edge of a soft line break. The new approach is more explicit. This fix also ensures that the start of a non-degenerate range is never on the end of a previous line. I added test coverage for all of this, in the tests for the consumer crate. I should still write tests for the Windows adapter sometime in the future.

This PR had some overlap with the macOS text PR, so I merged that one first, then rebased and fixed this one. I believe the fixes I did after the rebase are straightforward enough to not need additional review.


Allow specifying priorityClassName for Cluster pods

see discussion
https://github.com/cloudnative-pg/cloudnative-pg/discussions/1609

Superseded #1569


Query with comparison on boolean column results in "Invalid type: Invalid Type [BOOL]: Invalid type for index"

Consider the following statements:
CREATE TABLE t0(c0 BOOL UNIQUE);
INSERT INTO t0(c0) VALUES (0);
SELECT * FROM t0 WHERE t0.c0 = true; -- Error: Invalid type: Invalid Type [BOOL]: Invalid type for index

Unexpectedly, the SELECT results in an error Error: Invalid type: Invalid Type [BOOL]: Invalid type for index.
I found this issue based on the latest master branch (commit 9795d18b6a6e250a4076fa448f248287e76f5693).

Fixed in 331cce4a0c88ee1b477d5859de7211c455664349, this is a continuation of #504, with another missing boolean type in the index except now for lookups. All the boolean types should now be properly handled by the index.


Fix: Increase test coverage

What type of PR is this?
(REQUIRED)

cleanup

What this PR does / why we need it:
(REQUIRED)

Try to get test coverage to above 90%
Which issue(s) this PR fixes:
(REQUIRED)

Special notes for your reviewer:
(fill-in or delete this section)

Testing
go test
(fill-in or delete this section)

Release Notes
(REQUIRED)

No user facing changes for the most part. Mainly for increasing test coverage

This PR broke the docs package. 🙂
Related issue: https://github.com/urfave/cli-docs/issues/5
Will the removal of GetValue() be reverted, or should I update the cli-docs package to work around it?

yes i will revert GetValue


autocomplete just on html attributes in svelte

autocomplete is showing up even if not in class attribute, so every time I am writing {and TAB I am getting a windicss-intellisense class. Can post screenshots later :)

Yes. I found this too.

I guess that after the promotion tomorrow, issues will soon be overwhelmed here. 😂

got the same bug


invalid SDP: sdp: invalid numeric value -8959200248001175080

Which version are you using?
v1.3.0
Which operating system are you using?

[ ] Linux amd64 standard
[ ] Linux amd64 Docker
[ ] Linux arm64 standard
[ ] Linux arm64 Docker
[ ] Linux arm7 standard
[ ] Linux arm7 Docker
[ ] Linux arm6 standard
[ ] Linux arm6 Docker
[x] Windows amd64 standard
[ ] Windows amd64 Docker (WSL backend)
[ ] macOS amd64 standard
[ ] macOS amd64 Docker
[ ] Other (please describe)

Describe the issue
When trying to connect to RTSP camera Y-CAM Bullet HD: 1080, I get the error
invalid SDP: sdp: invalid numeric value -8959200248001175080 on startup.
Describe how to replicate the issue

started the server with the following line in .yml:
mycamera:
source: rtsp://username:password@<IP_ADDRESS>:554/v01

Did you attach the server logs?

no
Did you attach a network dump?

no

Hello, this can be fixed but you need to attach a server log with the option logLevel set to debug in mediamtx.yml and then replicate the issue.

Facing the same error with AXIS 221 camera. In the attachments there are logs from mediamtx with debug level
mtxlog.txt

@lqbrqt thanks for providing the camera model and the log, please test the release attached in this page (click on Artifacts, binaries) and let me know if it fixes the issue:
https://github.com/bluenviron/mediamtx/actions/runs/8707155701

@aler9 Thank you for really quick response! Currently, when running nightly build there is no output image from mediamtx (we're getting black screen), while using stable version image from 3 of 4 cameras are present. Also, in logs SDP error is not present. Sending you logs from provided mediamtx version mtxnightlylog.log

@lqbrqt the problem you are describing is a different one that is not the subject of this issue.
If you are sure it's a bug then you need to open another issue and attach two network dumps, one that contains exchanged packets between a camera and VLC, and the other that contains exchanged packets between the server (proxying a camera) and VLC, in order to spot the differences. You can find instructions on how to generate network dumps when you try to open an issue.

Anyway, i'm noticing that the server is stripping the MPEG4-IOD from the SDP of your cameras. This is the SDP that the camera provides:
v=0
o=-<PHONE_NUMBER>799653<PHONE_NUMBER>799661 IN IP4 <IP_ADDRESS>
s=Media Presentation
e=NONE
c=IN IP4 <IP_ADDRESS>
b=AS:8000
t=0 0
a=control:*
a=range:npt=now-
a=mpeg4-iod: "data:application/mpeg4-iod;base64,AoDUAE8BAf/1AQOAbwABQFBkYXRhOmFwcGxpY2F0aW9uL21wZWc0LW9kLWF1O2Jhc2U2NCxBUjBCR3dVZkF4Y0F5U1FBWlFRTklCRUVrK0FBZWhJQUFIb1NBQVlCQkE9PQQNAQUABAAAAAAAAAAAAAYJAQAAAAAAAAAAAzoAAkA2ZGF0YTphcHBsaWNhdGlvbi9tcGVnNC1iaWZzLWF1O2Jhc2U2NCx3QkFTWVFTSVVFVUZQd0E9BBICDQAAAgAAAAAAAAAABQMAAEAGCQEAAAAAAAAAAA=="
m=video 0 RTP/AVP 96
b=AS:8000
a=framerate:30.0
a=control:trackID=1
a=rtpmap:96 MP4V-ES/90000
a=fmtp:96 profile-level-id=245; config=000001B0F5000001B509000001000000012008D48D88032514043C14440F
a=mpeg4-esid:201

and this is the SDP that the server provides to any reader:
v=0
o=- 0 0 IN IP4 <IP_ADDRESS>
s=Media Presentation
c=IN IP4 <IP_ADDRESS>
t=0 0
m=video 0 RTP/AVP 96
a=control:rtsp://<IP_ADDRESS>:8554/my_camera_fourth/trackID=0
a=rtpmap:96 MP4V-ES/90000
a=fmtp:96 config=000001B0F5000001B509000001000000012008D48D88032514043C14440F; profile-level-id=245

the mpeg4-iod attribute has gone lost. Maybe this is the cause. Open a dedicated issue in order to move discussion there.

In addition to researching the reasons for the negative SDP number, it occurs when date/time is not synchronised correctly on the camera. To fix it - configure date and time in camera's settings


[Event Request] table 5940 "Service Item" procedure Validate() field "Warranty Starting Date (Parts)"

Please can you add the following code/event to the above procedure...
trigger OnValidate()
var
    ItemTrackingCode: Record "Item Tracking Code";
    IsHandled: Boolean;     //NEW CODE
begin
    IsHandled := false;     //NEW CODE
    OnBeforeValidateWarrantyStartingDateParts(Rec, xRec, IsHandled);    //NEW CODE
    if IsHandled then       //NEW CODE
        exit;               //NEW CODE

    if "Warranty Starting Date (Parts)" <> xRec."Warranty Starting Date (Parts)" then
        MessageIfServItemLinesExist(FieldCaption("Warranty Starting Date (Parts)"));

    if "Warranty Starting Date (Parts)" <> xRec."Warranty Starting Date (Parts)" then

The event publisher should be as follows...
[IntegrationEvent(false, false)]
local procedure OnBeforeValidateWarrantyStartingDateParts(var ServiceItem: Record "Service Item"; var xServiceItem: Record "Service Item"; var IsHandled: Boolean)
begin
end;

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. Please do not reply to this, as we do not monitor closed issues. If you have follow-up questions or requests, please create a new issue where you reference this one.
Build ID: 11030.


Create toast component(s)

React Aria Components doesn't have a Toast in their component library yet — even though Spectrum does. We'll use the Radix Toast Primitive for now.
I'm thinking of leaving the contents of a Toast under specified to allow for maximum flexibility. If our apps tend to consistently use the same Toast content we can codify stricter patterns? As always, going to refer to TailwindUI but use Radix Colors. CatalystUI hasn't implemented toasts or notifications yet so I won't refer to it.
@eakbulut I noticed that Vercel.com has lots of settings pages with forms and they utilize a Toast to display a success notification on the bottom right. I figure that's a good way to proceed? It's the motivation for this issue.

I think Tailwind's notification component looks good. The condensed view is somewhat similar to Material Design's snackbar component which I like. That's the one we should stick with to keep it simple as long as the toast is triggered by user action (validation) and not a system event (notification).
As for placement, I believe the most show up on lower right due to user familiarity with Windows notifications appearing in that part of the screen for decades. But we should also keep in mind where the action button triggering the toast is within the page layout. If it's consistently at the bottom of the page/form, then a bottom placement for the toast seems fair.


[FEATURE] Add Intel-Specific Optimization Section to README.md

Is this a unique feature?

[X] I have checked "open" AND "closed" issues and this is not a duplicate

Is your feature request related to a problem/unavailable functionality? Please describe.
The README.md currently lacks details on how users can optimize the project for Intel CPUs. Intel offers specific tools, such as the Intel AI Analytics Toolkit, which can significantly enhance performance, especially for libraries like pandas and scikit-learn. Without clear documentation, users may not be able to fully utilize the potential of their Intel hardware.
Proposed Solution
I propose adding a subsection in the README.md titled "Intel-Specific Optimizations." This section would:

Provide instructions on installing and configuring the Intel AI Analytics Toolkit for optimizing data science workflows.
Include examples demonstrating how to switch to Intel-optimized versions of pandas and scikit-learn.
Show performance comparisons highlighting the benefits of using Intel-specific libraries.
Provide code snippets that allow users to easily integrate these optimizations into their existing workflows.

This contribution is part of my efforts for Hacktoberfest and GSSoC 2024, aiming to improve the project's performance for users on Intel hardware.
Screenshots
No response
Do you want to work on this issue?
Yes
If "yes" to above, please explain how you would technically implement this (issue will not be assigned if this is skipped)
To implement the Intel-specific optimization section, I will:
Research Intel AI Analytics Toolkit:
Explore how the Intel AI Analytics Toolkit optimizes libraries like pandas and scikit-learn for Intel CPUs.
Identify the best practices for installing and configuring the toolkit.
Write Detailed Instructions:
Provide a step-by-step guide on installing the Intel AI Analytics Toolkit.
Demonstrate how to switch from standard pandas and scikit-learn to their Intel-optimized versions (e.g., using modin.pandas for pandas).
Include Code Snippets and Examples:
Add code examples showing how users can modify their current setup to use Intel-optimized libraries. For example:
python
Copy code
import modin.pandas as pd  # Instead of regular pandas
Provide similar instructions for using Intel-optimized scikit-learn.
Performance Benchmarks:
If possible, include performance benchmarks showing the improvements in speed when using Intel-optimized libraries compared to the standard ones.
Update README.md:
Add this content under a new section called "Intel-Specific Optimizations" in the README.md.
Currently, I am focusing on implementing Intel-specific optimizations only. However, in the future, when I implement optimizations for other hardware platforms (e.g., NVIDIA, AMD), I will surely update the README.md to include those changes as well.

@jvedsaqib @Mayureshd-18 Please go through this

@jvedsaqib and @Mayureshd-18 kindly review the issue and assign it to me

@priyansh985 can you just make a section attached with an hyperlink that will redirect us to another markdown file where Intel Specific info is present

@jvedsaqib sure and thanks and I am also working on other optimisation technologies as well to fully optimize the code can you please add labels like level 2 and gssoc and hacktoberfest

@Mayureshd-18 thanks sure ill do it


Rename minionssh to sshminion

Signed-off-by: Ricardo Mateus<EMAIL_ADDRESS>What does this PR change?
Rename minionssh to sshminion. This is apply only to internal sumaform names to minimize impact on existing jenkins jobs specified in sumaform-test-runner project.
Any changes to machine names would have a huge impact on DNS names for those machines, making the risk to high when comparing to the benefits we would have.
This PR relates with the following PR: https://gitlab.suse.de/galaxy/sumaform-test-runner/merge_requests/202
Jenkins Build:
https://ci.suse.de/view/Manager/view/Manager-3.2/job/manager-3.2-cucumber-pipeline-NUE/678/

LGTM


Determine the amount of free memory via CVAT

Actions before raising this issue

[X] I searched the existing issues and did not find anything similar.
[X] I read/searched the docs

Is your feature request related to a problem? Please describe.
Hello. Is there a way to determine the amount of free memory on the local server for self-hosted CVAT? Via Python SDK or alternative queries to CVAT. Thanks!
Describe the solution you'd like
No response
Describe alternatives you've considered
No response
Additional context
No response

Hello. No, there is no way. The functionality is out of CVAT scope.


Images missing on the tutorial website

E.g. the ones at the end here:
https://mne-tools.github.io/stable/manual/decoding.html
@larsoner

This should be fixed by turning this manual entry into a tutorials script. It should be easy for someone to do when they are bored

But which parts stay in the manual and which parts will be moved to a new tutorial script?

But which parts stay in the manual and which parts will be moved to a new tutorial script?

Eventually I think all of manual should / could be in tutorials.

This is what I see ...

Argh yes, temporary blindness on my part


Add documentation for HashMap and BTreeMap as tuple lists

This addresses the first two wishes from #32.
@upsuper: Ping, since you originally proposed this for addition to serde.
It would be nice to know if it works for you, since I generalized your implementation.

bors r+

I tested the hashmap one, and it works pretty well with my program, and I have replaced my own code with a dependency to serde_with!


Running example for github action

Hello,
im new to godot and trying to run my CI on github actions.
Can someone point me to an working example?

This is the latest config for github actions:
https://github.com/aBARICHELLO/godot-ci/blob/master/.github/workflows/godot-ci.yml
Make a folder on your repo called .github, then create a subfolder called workflows, then paste godot-ci.yml inside.

Would you also do that in a real project? Have the godot project in a subdirectory?

That is up to you, there is not much difference (but you have to make sure your CI script points to the right project file).

as an example, i used godot-ci with github actions for godot wild jam of a few months back: https://github.com/2shady4u/gwj24

I think i'll create an example repository and include it in the readme, i'll also review the github action install process

I have a second example repository to add: https://github.com/aBARICHELLO/game-off
I'm gonna be honest with you guys, I'm not a huge fan of GitHub Actions. I think GitLab CI is easier to setup. I don't know why but GitHub Actions is really hard to learn so I'm not the best candidate for improving this part of this project.
Closing this for now, let me know if you have other quesitons


Use request to find Site when no SITE ID in settings.

ping @ldko, @runderwood. There will be another PR after this gets merged that updates the version, tox test envs, etc.

Coincidentally, this will close #9 when merged.

ok :+1:


fix(plugins/plugin-client-common): "quiet" markdown kui command execu…

…tion links show the internal "quiet" part
Fixes #7698

Description of what you did:

My PR is a:

[ ] 💥 Breaking change
[x] 🐛 Bug fix
[ ] 💅 Enhancement
[ ] 🚀 New feature

Please confirm that your PR fulfills these requirements

[x] Multiple commits are squashed into one commit.
[x] The commit message follows Conventional Commits, which allows us to autogenerate release notes; e.g. fix(plugins/plugin-k8s): fixed annoying bugs
[x] All npm dependencies are pinned.

/lgtm


interpretation of local feature importances

Hi,
thank you for this nice package.
It would be helpful if the examples where extended with some documentation on how the visualized results are computed.
For instance, what puzzles me is the computation of the local feature importance values in relation to the predicted value considering the Explainable Boosting Classifier.
How do they relate to each other? Is there a relation between them (as the model is a GAM I would expect as a first guess some linear relation, but it doesn't add up)?
My apologies if the question reveals some ignorance on my side to standard literature.
Kind regards,
Tomas
##########
EDIT below:
by try and error, I believe I found the solution: the probability score given by the Explainable Boosting Classifier is computed as:
`
def compute_p(rs):
return 1./(1. + np.exp(-rs))
t = np.sum(ebm_local._internal_obj['specific'][0]['scores']) + ebm_local._internal_obj['specific'][0]['extra']['scores']
p = compute_p(t)
`

Thanks for bringing up (and solving!) this issue @tomasvanoyen! We are in the process of writing up documentation to have formal answers to these questions :).
You're right, the local feature importance values for classification are Log-Odds terms. Just like with logistic regression, these terms get added together, and the final value gets passed through the logistic link function (https://en.wikipedia.org/wiki/Logistic_function) to turn them into probability scores.
-InterpretML Team


I have a question about dependencies library:Tapable.js

node_modules rootpath \ webpack \ node_modules \ tapable \ lib \ Tapable.js : 164
arguments[i].apply;
TypeError:Cannot read property 'apply' of undefined.........
so,what should I do?
/----Tapable.js source code----/
Tapable.prototype.apply = function apply() {
for(var i = 0; i < arguments.length; i++) {
arguments[i].apply(this);
}
};
/---end---/
It's easy to fix this bug,like this:
arguments[i] && arguments[i].apply(this);
but I don't know  the real reason and what will happen?

+1
We just experienced the same issue

You are propably passing something as plugin that is not a plugin.

@sokra
I hava three plugins in npm > node_modules
1、babel    2、browser-sync   3、webpack
and in current project's node_modules
1、.bin    2、babel-core    3、babel-loader    4、webpack
devDependencies 3 & 4  in package.json
other info: WIN7 64 ,node 4.2.1 , npm 2.14.7,webpack 1.12.6
BTW,that's OK in my WIN XP computer.
and I found the same issue in webpack/tapable https://github.com/webpack/tapable/pull/6

@sokra I see what plugin is right now :D   U r right! thanks!

I had the same issue because the end of one of my plugins array entries was ,, instead of just ,

@roryprimrose I literally just encountered the same issue after spending hours trying to debug. Lucky I saw your comment and decided to have a look in my plugins array.

@sokra  i have the very same problem here's my webpack.test.config.js
`const webpack = require('webpack');
const path = require('path');
const commonConfig = require('./base.js');
const webpackMerge = require('webpack-merge');
module.exports = function(env) {
return webpackMerge(commonConfig(), {
devtool: 'inline-source-map',
entry: {
vendor: ['angular-mocks']
},
output: {
filename: '[name].js',
path: path.resolve('dist'),
pathinfo: true
},
plugins: [
'karma-webpack',
'karma-chai',
'karma-mocha',
'karma-sourcemap-loader',
'karma-mocha-reporter'
],
})
};
`
return the following error:

ERROR [preprocess]: Can not load "webpack"!
TypeError: arguments[i].apply is not a function
at Compiler.apply (/node_modules/tapable/lib/Tapable.js:306:16)
at webpack (/node_modules/webpack/lib/webpack.js:32:19)

if i remove the set of plugins then i get the following error:

Error
at MemoryFileSystem.mkdirpSync (/node_modules/memory-fs/lib/MemoryFileSystem.js:144:10)
at MemoryFileSystem.(anonymous function) [as mkdirp] (/node_modules/memory-fs/lib/MemoryFileSystem.js:279:34)
at Compiler. (/node_modules/webpack/lib/Compiler.js:322:27)


Clean up the presentation of the Google Material Icons apache license

Since we're now simply linking to the Apache license online (as Google do themselves), this is no longer relevant.


Allow multiple billing plans

Our previous approach to billing was hardcoded to a single configuration, which worked well but didn't account for apps that want to have multiple billing plans. That might have made it awkward for apps that start out with this package but eventually need a multi-tiered plan, because they'd have to break out of the library and implement it themselves, which isn't ideal.
This PR converts the previous check method that both checked and requested payment, to 2 separate methods:

check will... check if any of multiple plans are currently active
request will... request payment for a specific plan, using the plan as the purchase name

const shopify = shopifyApi({
  ...
  billing: {
    "Silver plan": {
      amount: 1,
      interval: BillingInterval.Every30Days,
      trialDays: 30,
    },
    "Gold plan": {
      amount: 10,
      interval: BillingInterval.Every30Days,
    },
  },
});

const hasPayment = await shopify.billing.check({
  session,
  plans: ["Silver plan", "Gold plan"],
});

if (hasPayment) {
  // Proceed
} else {
  // App can also redirect to an endpoint like /select-your-plan here,
  // where the merchant can pick their poison
  redirectUrl = await shopify.billing.request({
    session,
    plan: "Silver plan",
  });
}

While on it, I also added support for trialDays and replacementBehavior for subscriptions, which were lacking in the previous solution.
As a whole, this should give apps complete control over where and how they want billing to apply.

I changed this up so we return an array with all the plans we found payments for, in case it's possible for the API to return multiple active payments - thinking mostly about one-time payments here.


Pgsql cube type compile fail

Does your PR solve an issue?
Resolves #3461
Resolves #3460
Replaces #3457
Replaces #3456
The Postgresql cube type fails to compile in version 0.8.1:
.../sqlx-postgres-0.8.1/src/types/cube.rs:307:33
    |
307 |     const PACKED_WIDTH: usize = size_of::<u32>();
    |                                 ^^^^^^^ not found in this scope
    |
help: consider importing one of these items
    |
1   + use core::mem::size_of;
    |
1   + use std::mem::size_of;

The PR includes a patch for this as well as a scoping change for the hstore type to keep it consistent with the others.

Could you add the following to your PR-description? (this way, other users have a link to follow)
Resolves #3461
Resolves 3460
Replaces #3457
Replaces #3456

@kdesjard cargo fmt needs to be run.

@kdesjard could you please run cargo fmt and push a commit. Without this fix pg_replicate's MSRV needs to be bumped which we'd like to avoid.

I did push a commit https://github.com/launchbadge/sqlx/pull/3459/commits/f47ce6b6dbe9d58efba8b1f4ca77034fd23aff99
Am I missing something?


[examples] Some new examples proposed

Here it is a small list of new examples that I think could be interesting for raylib. If anyone wants to work on any of them, please, make sure to follow examples_template. Please, try to make examples a bit appealing for the user! :)

[ ] core_scissor_test : Functionality was added in raylib 2.5 but no usage example provided yet.
[ ] textures_cubemap : Functionality was added in raylib 2.5 but no usage example provided yet. LoadTextureCubemap() processes an input image (multiple layouts supported)  and returns a cubemap texture... some additional function could be needed to draw the TextureCubemap...
[ ]  textures_mouse_painting : Canvas painting demo with mouse, for example LMB to paint and RMB to erase, with some basic color selection options.
[ ] shaders_basic_lighting : Basic phong lighting samples, this one is almost ready to be added!
[ ] shaders_fog_effect : Basic fog (configurable?) using a shader, it can be con¡mbined with a heightmap for usage.

Alternatively, there are several examples that require some review, view #847 and #851.

scissor mode would be more useful if the view port could be changed too, however this impacts functions like GetMouseRay which currently assume a fullscreen viewport...

@ChrisDill reviewed your examples on commit https://github.com/raysan5/raylib/commit/602d2a65dd628ea75801c79bfdf960b081696e34. Take a look! ;)

gaaah if statements without braces.... @raysan5 they hurt my eyes :-p

@raysan5 Thanks! The changes look really good! :)

Closing this issue for now.


Saved zoom not retrieved correctly from Local Storage

Ref: #3335
With enableSaveZoom set to "LocalStorage", the zoom transform for a zoomed canvas is not being restored correctly when the canvas is displayed a second time.

This is a regression caused by the disablement of zoom buttons. It wasn't caught because the test cases for Local Storage was not working correctly. So I fixed the test case and the problem at the same time.