Upgrade D3

Upgrade to the latest version of d3

I'd think of this as low-pri since d3 has been stable for a while now and upgrading may not bring us any benefit.
Definitely should consider if it gets us any benefits.

Agreed. I just noticed that we've talked behind and might as well update it since we are updating everything else

Yep, the other things we're behind actually get us a lot of benefits like yarn workspaces, jest. And there's a lot of development experience improvements.
d3 was already stable when we used it 3-4 years ago. They're essentially utility functions.
Contributions welcome here but this is really low on the list (I'd even consider taking it out of the modernization RFC.
If we double-down on other parts like tests, showcase, documentation we'd get way further.


Added cluster owner is not able to change cloud credential of an rke2 DO cluster

Rancher Server Setup

Rancher version: 2.6-head commit id: 46eb9d4
Installation option (Docker install/Helm Chart): docker install

Information about the Cluster

Kubernetes version: v1.21.6+rke2r1
Cluster Type (Local/Downstream): Local cluster - RKE2 DO

Describe the bug
Added cluster owner is not able to change cloud credential of an rke2 DO cluster
To Reproduce

Deployed an RKE2 DO cluster
Add a user as cluster owner
Login as cluster owner
Edit Config on the cluster
User is not able to add a new cloud credential

Note:

But if this is an ec2 rke2 cluster, added cluster owner user is able to create a new one or change it to another one. And changing the cloud cred to a new one works, user is able to scale up nodes after.
On 2.6.2, both the clusters - DO and AWS did not have create a new Cloud cred option.

Setup For Reproduction

Rancher version: v2.6.2
Installation option: Docker

Cluster information

k8s: v1.21.6
Cluster type: RKE2/ec2

Steps For Reproduction

Provision and RKE2 cluster
Create a standard user
Give the standard user access to the cluster with the "cluster owner role"
Login as standard user and go to edit config.
Notice that you are not able to create a new credential

Setup For Validation

Rancher version: v2.6-head(f93f439)
Installation option: Docker

Cluster information

k8s: v1.22.4
Cluster type: RKE2/ec2

Steps For Validation

Provision and RKE2 cluster
Create a standard user
Give the standard user access to the cluster with the "cluster owner role"
Login as standard user and go to edit config.
Create a new credential and let the cluster update.

Results
The cluster is able to get a new credential added to the cluster and updates successfully.
Screenshots
Repro:

Validation:


Allow adjusting drawn lines

Allow the user to change the fill, stroke, and stroke-width of a line after it has been drawn. Could list the lines to the side like a layer palette.

Fixed in https://github.com/moneypenny/svg-scribbler/commit/5ab8b942780631111f2020e79f8ef43469070e7d


Fix conditions for vendor_dbx.esl in shim

vendor_dbx.esl is only built if SIGNING_MODEL=='user' and MOK_SB=='1', but it's inclusion in shim's EXTRA_OEMAKE is only guarded by SIGNING_MODEL.
Fixes #57

Let me know if you would like any changes to, for instance, the commit message. I found no guidelines here on formatting so i just roughly followed what others did previously

We follow the Yocto guidelines: https://docs.yoctoproject.org/dev/contributor-guide/index.html
It is better to replace meta-efi-secure-boot with shim in subject as the fix is for shim recipe.

vendor_dbx.esl is only built if SIGNING_MODEL=='user' and MOK_SB=='1', but it's inclusion in shim's EXTRA_OEMAKE is only guarded by SIGNING_MODEL.
Fixes #57

You can add this detail to your commit message.

Thanks for the feedback, I have applied Your suggestions to the commit message.


Add production build

Bundles the app and all dependencies (except angular2/RxJS itself)
Bundling and lazy loading ready

Edit:
Some optimization is still needed.

[ ] tsc: emit js without helpers (it's a lot of duplicated code).
[ ] Provide global typescript helpers.

This is really excellent. Much applause! :)


Basic uploading & connectivity issues. Docker & MacOS Versions

Hi!
Was watching this project for some time and at last tried it and miserably failed.
I created basic .md file and trying to upload it from MacOS and via Docker.
File content:
<!-- Space: TWV -->
<!-- Parent: Automation -->
<!-- Parent: Documentation -->
<!-- Title: Sync Markdown to Confluence -->

Article text here.

command i run:
docker run --rm -i kovetskiy/mark:latest mark -u<EMAIL_ADDRESS>-p password -b https://companyname.atlassian.net/wiki -f writing-app-description.md
When trying native mac version i get:
2021-10-28 14:15:35.461 FATAL specified file doesn't contain metadata and URL is not specified via command line or doesn't contain pageId GET-parameter
and with Docker version i only get:
2021-10-28 11:10:52.191 FATAL No files matched
I tried making login/password invalid, yet it still gives the same errors as it's not even trying to connect.
What are my options? What am i doing wrong?

@kovetskiy oh, my bad! that fixed it!
but now I stumbled upon #113 (however, I'm still logging in using username/password, not with a token)
as I understood, there's no workaround to it yet until you implement bearer token header support into Mark? or is there anything I can ask our confluence admins to change? (just wondering how others are still using Mark)

Disregard the above comment, I passed the token as password, and it magically worked.
Sorry to bother you. Now my and life of others will be a lot easier, thanks to you.
Хорошего дня!


Edit a timer card/ Story 1

Value Proposition
As a User
I want to be able to set the timer
So thatthe application can run the time on my preference
Description
Scribble / design or text
Acceptance Criteria

[ ] describe every scenario in detail
[ ] e.g. All Inputs are required, show warning if empty.
[ ] ...

Tasks
(for developers team)

[ ] list the tasks that need to be performed within the dev team
[ ] e.g. Components, Storybook, testing
[ ] ...

Complexity
XS, S, M, L, XL

Hello Philip,
great User Story!
Just some small corrections.
There is a typo in So that + the application can...
I would rewrite in AC the 3rd line, like "The button redirecting to the form page".
You shouldn't use "us" or "we" as in Formpage Screen line 2.
Also in Formpage Screen line 2 -> where is the play button in the form page?
What tests you want to write? Be clear with that, it will help you while coding.

thank you!

Hey Philip,
good User story so fare.
I'm a bit unsure with the different pages. As fare as I understood, we should start with one page.

Hey Philip,
Good start 💪🏼 I have a few suggestions:
I would rephrase the value proposition a bit. Think about why the user would want to set a time for an exercise. What value does that add for the user? An example:
As a user
I want to save a duration for my exercise
so that I do not have to remember for how long I need to do my exercise.
I like that you split the acceptance criteria in two parts (for each screen). In general you need to only describe what is not visible in the scribble e.g. the possible user interactions. I think you could phrase the acceptance criteria a bit more specific:
_Home Screen:

The default duration of the exercise displayed is "00:00".
By clicking on the exercise button the user is redirected to the form page.

Form Screen:

By clicking on the "+" and "-" buttons the user can increase or decrease the duration of the exercise.
By clicking on the checkmark-button the exercise duration is saved and the user is redirected to the home screen. The home screen then shows the exercise duration the user saved.
By clicking on the back button the user is redirected to the home screen without saving the exercise duration.
The default and minimum value of the exercise timer is "00:00", the maximum value is "59:59"._

Add to userstory

I think you can delete this line. Do you mean "add to app" here? 🤔
If you have any questions regarding my comments, please feel free to ask 🙂


⚠ Bofrost.fr has degraded performance

In 1803392, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1032 ms

Resolved: Bofrost.fr performance has improved in 7c9f594 after 6 minutes.


[branch-2.1][improvement](jdbc catalog) Optimize JdbcCatalog case mapping stability

pick #40891
This PR makes the following changes to the uppercase and lowercase mapping of JdbcCatalog

The identifierMapping is managed by JdbcExternalCatalog instead of JdbcClient to better control its lifecycle
The identifierMapping no longer loads remoteName alone, but Catalog controls the loading uniformly
The identifierMapping will be loaded when each FE performs makeSureInitialized() to ensure that each FE has a mapping
The initialization of mapping will only be performed once in makeSureInitialized(), which means that even if you use metaCache, if your source data is updated when identifierMapping is enabled, you must refresh the catalog to query normally.
The identifierMapping is only responsible for the properties of the Catalog and is no longer affected by the fe config, simplifying the processing logic
If lower_case_mete_names is false and meta_names_mapping is empty in the catalog properties, the identifierMapping will no longer take effect, further enhancing the stability of the default settings
The JdbcClient is no longer closed during onRefreshCache, reducing the repeated creation of resources, improving reuse, and reducing the leakage of some global shared threads

run buildall


Update README.md

The plugin has many changes
many of the gifs are not up-to-date
we can also print better the exported functions: .open() .close() .toggle()

[x] Add instructions on how to change keymappings
[x] Add instructions on how to change theme (list our hl groups and an example)
[ ] Update gifs

Awesome work with the docs, I added the update gifs task above, anything else we should do?

Just in general document some more features


azure-cli/setup.py depends on  PyGithub v1

Describe the bug
azure-cli requires to import PyGithub v1 which prevents others to install PyGithub v2.
https://github.com/Azure/azure-cli/blob/dev/src/azure-cli/setup.py#L143C6-L143C14
Related command
N/A
Errors
N/A
Issue script & Debug output
N/A
Expected behavior
We should be able to install the latest version of PyGithub.
Environment Summary
> az --version
azure-cli                         2.54.0

core                              2.54.0
telemetry                          1.1.0

Dependencies:
msal                              1.25.0
azure-mgmt-resource             23.1.0b2

Python location '/Users/stephane/.pyenv/versions/3.11.6/bin/python'
Extensions directory '/Users/stephane/.azure/cliextensions'

Python (Darwin) 3.11.6 (main, Oct  6 2023, 15:56:03) [Clang 15.0.0 (clang-15<IP_ADDRESS>)]

Additional context
While the preferred method to install the az cli is the official method with the dedicated interepretter and copy of the azure SDK this is not ok for folks that work with ephemeral containers due to the extremely large size of the Azure SDK. Having a duplicate copy of the azure SDK is a big problem that is tracked in other long open issues. We cannot use the official method and the strict import tree of the azure CLI is causing conflicts.
Relates to #18548 and

Thank you for opening this issue, we will look into it.

@yonzhan is there any update on this issue?

@yonzhan This dependency conflict is still present in 2.59.0.

@yonzhan I see 'PyGithub~=1.38' still pinned in 2.60.0.

PyGithub is introduced in https://github.com/Azure/azure-cli/pull/17826, which is owned by app service team.
@AzureAppServiceCLI @antcp for awareness


Travis improvements

Type of change

CI improvement

Description

Make the output less noisy by telling mvn and docker to be quiet.
Disable the default behaviour of the travis install phase. For a java project this does, approximately, mvn install, which is pointless for us as the java artifacts get build in the script phase.
Use the travis cache for mvn dependencies.

Checklist
Please go through this checklist and make sure all applicable tasks have been done

[ ] Write tests
[ ] Make sure all tests pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[ ] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging

Looking at the build output I think we should also think about tuning down the reconciliation logs from CC. There is lot of information just to say "I checked and I'm not doing anything". But that is beyond this PR.


Ball

The ball is spawning but not moving on start. Noticing a movement in the AI paddle on start.

Deleted and re-added the pong prefab to the game. It had two transform components somehow, this way causing issues with it's movement


Update README to include example of running deploy commands in a container

Just a couple of extra small things.

Just a couple of extra small things.

Thanks @YasserBennani - Updated now.


Implementing in Swift

Hello, is there a tutorial on how I could implement this with Swift?
Kinda new, but do I need to create New view controllers or PageViewControllers?

Take a look at the demo project in objective-c, you should be able to just port that to swift pretty easily.

Thanks! Taking a look at them now.
Do I need to use CocoaPods? I see in the tutorial that I can just drag the source files, but does that apply to Swift as well?

There is currently not a swift version - but you can use either CocoaPods or manually copy the objective-c code into a swift project and you should be able to use it anyway.

Any tutorials on exactly what to copy into the Swift Project? There's just a lot of code in the demo. Reading through it, but having trouble implementing into my project.

4 files - OnboardingContentViewController and OnboardingViewController.

@mamaral I got that, but I'm having trouble with the:  "Create individual pages by creating instances of OnboardingContentViewController" part.
I'm creating the instances in the appdelegate.swift file, similiar to what you did. But it won't let me. Also having trouble importing the header files into the appdelegate.swift.

I'm assuming it won't let you because you can't import the headers?

ok, so I ogt it working with my project in Swift!
How would I get it so that when the button is pressed, it takes the view to my Login Screen rather than a View that was made through code?

Sounds like your AppDelegate doesn't have a storyboard property...

I added:
var storyboard : UIStoryboard?

and then did what you suggested.
Unfortunately, when I click the button to show the Login Page, I get a warning stating : "Thread1: EXC_Bad_Instruction (code = EXC_1386_INVOP, subcode =0x0) " that points to the :
"var nextView: LoginVC = self.storyboard?. instantiate...." line

I don't know what that storyboard var is supposed to be, but the issue appears to be there and not with Onboard. I haven't spent much time with Swift or storyboards to know what the issue might be.

Got it to work! Very smooth transitions. Love it.

Cool!

Can you share how you got it to work?

Take a look at this:
https://github.com/seanicus/Onboard


Update Project Structure

Consider transitioning to Webpack to manage application a little better
Include the appropriate paths the way the content of the application would be served
Implement a basic content and background script to test and understand how they work in accordance to a react application

handle API keys appropriate to avoid leakage of sensitive data


Remove hardcoded plugin extension from RUN command

On OS X shared object extension is dylib hence test invocation had to be
changed to reflect that.
This will probably fix this issues on other platforms (Windows?)

Thanks for the patch! Will happly accept once the isystem issue can be resolved.

Ah, this shouldn't be here.
I was having problems with finding standard headers, like cassert, during clang invocation (tests were failing with message 'casssert' no such file)
It turns out on OS X you also need libcxx from llvm to correctly find C++ headers (clang from local out of source build is not using system headers).
tl;dr This isystem stuff is not needed plus on OS X you need libcxx. I'll adopt the patch later today


Svg files in NControlView

Can I load svg files into NControlView ?

Yes you can - use the SvgReader from NGraphics and call its draw function in your overridden Draw method.


Pull Request: Add Initial Backend Features (API v1) for Vecs School

Description:
This pull request introduces the first version (v1) of the Vecs School backend API, encompassing fundamental features for managing courses, reservations, user registration, authentication, and user-specific operations.
Link to frontend application - VECS School Frontend
Features Added:

Endpoints for Courses (API v1):

CRUD operations for courses.
API routes for course listing and retrieval by ID.

Endpoints for Reservations (API v1):

CRUD operations for reservations associated with courses.
API routes for reservation creation, listing, update, and deletion.

User Authentication and Authorization:

Implemented user authentication utilizing Devise and Devise JWT for secure registration, login, and logout processes.
Integrated JSON Web Tokens (JWT) for token-based authentication and security.

Endpoint for Current Logged-In User:

Added an API endpoint to fetch details about the currently logged-in user.
Permits authenticated users to access their personalized user information.

Testing and Documentation:

Wrote comprehensive RSpec tests for models and controllers.
Created API documentation using Swagger for clear and interactive endpoint documentation.

Changes Made:

Developed controllers, models, and migrations for courses and reservations.
Implemented user registration, login, and logout using Devise.
Integrated Devise JWT for token-based authentication.
Created versioned API endpoints for CRUD operations on courses and reservations.
Added API routes for user authentication and user-specific operations.
Enforced proper error handling and consistent response messages.
Accompanied with comprehensive unit tests and API documentation.

API Routes (API v1):

POST /signup - Register a new user.
POST /login - Authenticate and receive an access token.
DELETE /logout - Log out the current user.
GET /api/v1/courses - Retrieve a list of all courses.
GET /api/v1/courses/:id - Retrieve details of a specific course.
POST /api/v1/courses - Create a new course.
PUT /api/v1/courses/:id - Update details of a course.
DELETE /api/v1/courses/:id - Delete a course.
GET /api/v1/reservations - Retrieve a list of all reservations.
GET /api/v1/reservations/:id - Retrieve details of a specific reservation.
POST /api/v1/reservations - Create a new reservation.
GET /api/v1/current_user - Retrieve details of the current logged-in user.

Reviewer:
Kindly review this pull request to ensure adherence to coding standards, security practices, and overall code quality.
Thank you for your time and consideration.
Best regards,
@christianonoh, @smunoz1988, @Ellyboi and @vvoo21

Thank you taking your time to give this acceptable criticism......The corrections will immediately be implemented


Adding ability to filter api server results

📝 Description
This PR will add the options to filter using our proxy, means filtering happen on BE side,
this is a temp solution to vm list, as this component should be rewritten as the component form console need to have a lot of adjustment in order to filter in BE side.
🎥 Demo

/lgtm

/retest

/retest

/retest

/retest

/retest

/retest

/retest

updated the CI cluster to ocp 4.13 in https://github.com/openshift/release/pull/41304
/retest

/lgtm

/test kubevirt-e2e-aws

/retest

/retest

/retest

/lgtm


mss310 plug switch working but not reporting sensor values (power, energy, voltage, current)

I have 4 mss310 configured. Previously using them with merosss app and cloud. Unpaired them and paired to local addon using Custom Pairer app. Went fine and flawlessly, 4 devices added and 4 are capable of switching on and off.
But I have constant 0 value for all sensors in all 4 devices.
Searching into Local Agent logs I've seen lots of "GET" Appliance.Control.ConsumptionX and Appliance.Control.Electricity messages but no "GETACK" messages in return.
local addon version 0.0.1-alpha49 and meross component version 1.2.10

I just experienced something that might be related (but probably won't help you):
after setting up an mss310, all I saw from the integration was two power sensors: Wattage (not kWh) and Amperage. Both reported as 0, which makes sense because nothing was plugged in.
After I plugged something in, the values updated - so I can't reproduce your exact issue.
However, I was wondering why the switch wasn't showing up at all (assuming that's the most essential part), but toggling the switch manually using the on-device button made the switch entity magically appear. Voltage and kWh also showed up later.
Going by that strategy.. Have you tried drawing (possibly different amounts of) power through the plug? Maybe the broker/integration somehow needs that to "seed" the entity?

I just experienced something that might be related (but probably won't help you): after setting up an mss310, all I saw from the integration was two power sensors: Wattage (not kWh) and Amperage. Both reported as 0, which makes sense because nothing was plugged in. After I plugged something in, the values updated - so I can't reproduce your exact issue.
However, I was wondering why the switch wasn't showing up at all (assuming that's the most essential part), but toggling the switch manually using the on-device button made the switch entity magically appear. Voltage and kWh also showed up later.
Going by that strategy.. Have you tried drawing (possibly different amounts of) power through the plug? Maybe the broker/integration somehow needs that to "seed" the entity?

not related. Two of the plugs are in normal use with two appliances, and sensors are present but with 0 value. Also switch working ssince minute 1 with. no problem
Thanks anyway.


CLI: help text for "containerapp update" is too wide

In the following output, the help text starts too far to the right:
$ az containerapp update --help
WARNING: This command is from the following extension: containerapp

Command
    az containerapp update : Update a container app. In multiple revisions mode, create a new
    revision based on the latest revision.

Arguments
    --no-wait                                                                : Do not wait for the
                                                                               long-running
                                                                               operation to finish.
    --tags                                                                   : Space-separated tags:
                                                                               key[=value]
                                                                               [key[=value] ...].
                                                                               Use '' to clear
                                                                               existing tags.
    --yaml                                                                   : Path to a .yaml file
                                                                               with the
                                                                               configuration of a
                                                                               container app. All
                                                                               other parameters will
                                                                               be ignored. For an
                                                                               example, see  https:/
                                                                               /docs.microsoft.com/a
                                                                               zure/container-
                                                                               apps/azure-resource-
                                                                               manager-api-
                                                                               spec#examples.

Container Arguments
    --args                                                                   : A list of container
                                                                               startup command
                                                                               argument(s). Space-
                                                                               separated values e.g.
                                                                               "-c" "mycommand".
                                                                               Empty string to clear
                                                                               existing values.
    --command                                                                : A list of supported
                                                                               commands on the
                                                                               container that will
                                                                               executed during
                                                                               startup. Space-
                                                                               separated values e.g.
                                                                               "/bin/queue"
                                                                               "mycommand". Empty
                                                                               string to clear
                                                                               existing values.
    --container-name                                                         : Name of the
                                                                               container.
    --cpu                                                                    : Required CPU in cores
                                                                               from 0.25 - 2.0, e.g.
                                                                               0.5.
    --image -i                                                               : Container image, e.g.
                                                                               publisher/image-
                                                                               name:tag.
    --memory                                                                 : Required memory from
                                                                               0.5 - 4.0 ending with
                                                                               "Gi", e.g. 1.0Gi.
    --revision-suffix                                                        : User friendly suffix
                                                                               that is appended to
                                                                               the revision name.

Environment variables Arguments
    --remove-all-env-vars                                                    : Remove all
                                                                               environment
                                                                               variable(s) from
                                                                               container..
    --remove-env-vars                                                        : Remove environment
                                                                               variable(s) from
                                                                               container. Space-
                                                                               separated environment
                                                                               variable names.
    --replace-env-vars                                                       : Replace environment
                                                                               variable(s) in
                                                                               container. Other
                                                                               existing environment
                                                                               variables are
                                                                               removed. Space-
                                                                               separated values in
                                                                               'key=value' format.
                                                                               If stored as a
                                                                               secret, value must
                                                                               start with
                                                                               'secretref:' followed
                                                                               by the secret name.
    --set-env-vars                                                           : Add or update
                                                                               environment
                                                                               variable(s) in
                                                                               container. Existing e
                                                                               nvironmentenvironment
                                                                               variables are not
                                                                               modified. Space-
                                                                               separated values in
                                                                               'key=value' format.
                                                                               If stored as a
                                                                               secret, value must
                                                                               start with
                                                                               'secretref:' followed
                                                                               by the secret name.

Resource Id Arguments
    --ids                                                                    : One or more resource
                                                                               IDs (space-
                                                                               delimited). It should
                                                                               be a complete
                                                                               resource ID
                                                                               containing all
                                                                               information of
                                                                               'Resource Id'
                                                                               arguments. You should
                                                                               provide either --ids
                                                                               or other 'Resource
                                                                               Id' arguments.
    --name -n                                                                : The name of the
                                                                               Containerapp. A name
                                                                               must consist of lower
                                                                               case alphanumeric
                                                                               characters or '-',
                                                                               start with a letter,
                                                                               end with an
                                                                               alphanumeric
                                                                               character, cannot
                                                                               have '--', and must
                                                                               be less than 32
                                                                               characters.
    --resource-group -g                                                      : Name of resource
                                                                               group. You can
                                                                               configure the default
                                                                               group using `az
                                                                               configure --defaults
                                                                               group=<name>`.
                                                                               Config: default.
    --subscription                                                           : Name or ID of
                                                                               subscription. You can
                                                                               configure the default
                                                                               subscription using
                                                                               `az account set -s
                                                                               NAME_OR_ID`.

Scale Arguments
    --max-replicas                                                           : The maximum number of
                                                                               replicas.
    --min-replicas                                                           : The minimum number of
                                                                               replicas.
    --scale-rule-auth --sra                                                  : Scale rule auth
                                                                               parameters. Auth
                                                                               parameters must be in
                                                                               format "<triggerParam
                                                                               eter>=<secretRef> <tr
                                                                               iggerParameter>=<secr
                                                                               etRef> ...".
    --scale-rule-http-concurrency --scale-rule-tcp-concurrency --srhc --srtc : The maximum number of
                                                                               concurrent requests
                                                                               before scale out.
                                                                               Only supported for
                                                                               http and tcp scale
                                                                               rules.
    --scale-rule-metadata --srm                                              : Scale rule metadata.
                                                                               Metadata must be in
                                                                               format "<key>=<value>
                                                                               <key>=<value> ...".
    --scale-rule-name --srn                                                  : The name of the scale
                                                                               rule.
    --scale-rule-type --srt                                                  : The type of the scale
                                                                               rule. Default: http.

Global Arguments
    --debug                                                                  : Increase logging
                                                                               verbosity to show all
                                                                               debug logs.
    --help -h                                                                : Show this help
                                                                               message and exit.
    --only-show-errors                                                       : Only show errors,
                                                                               suppressing warnings.
    --output -o                                                              : Output format.
                                                                               Allowed values: json,
                                                                               jsonc, none, table,
                                                                               tsv, yaml, yamlc.
                                                                               Default: json.
    --query                                                                  : JMESPath query
                                                                               string. See
                                                                               http://jmespath.org/
                                                                               for more information
                                                                               and examples.
    --verbose                                                                : Increase logging
                                                                               verbosity. Use
                                                                               --debug for full
                                                                               debug logs.

Examples
    Update a container app's container image.
        az containerapp update -n MyContainerapp -g MyResourceGroup \
            --image myregistry.azurecr.io/my-app:v2.0

    Update a container app's resource requirements and scale limits.
        az containerapp update -n MyContainerapp -g MyResourceGroup \
            --cpu 0.5 --memory 1.0Gi \
            --min-replicas 4 --max-replicas 8

    Update a container app with an http scale rule
        az containerapp update -n myapp -g mygroup \
            --scale-rule-name my-http-rule \
            --scale-rule-http-concurrency 50

    Update a container app with a custom scale rule
        az containerapp update -n myapp -g mygroup \
            --scale-rule-name my-custom-rule \
            --scale-rule-type my-custom-type \
            --scale-rule-metadata key=value key2=value2 \
            --scale-rule-auth triggerparam=secretref triggerparam=secretref

To search AI knowledge base for examples, use: az find "az containerapp update"

[Survey] Help us improve Azure CLI by sharing your experience. This survey should take about 5 minutes. Run 'az survey' to open in browser. Learn more at https://go.microsoft.com/fwlink/?linkid=2203309

So for anyone with a non-wide screen (e.g. a traditional 80 columns, like I use), I see this:

- - -
Which is really hard to read. I suspect it's this line:
--scale-rule-http-concurrency --scale-rule-tcp-concurrency --srhc --srtc

that's causing it. If the tooling won't let it put these on separate lines, then perhaps split it into two separate options (--scale-rule-http-concurrency --srhc and --scale-rule-tcp-concurrency --srtc) to help a little. It still might be kind of wide though. In which case consider dropping the "rule" word??
Another option is to start the text on the next line instead of on the same line as the --flags... line. Then it doesn't matter how wide the flag list is, it shouldn't impact where the text column starts. e.g.
---opton1 --option2 --really-really-really-really-long-option-that-no-one-wants-to-type
                                 : Some cool text explaining it.

This might apply to other commands as well, like create.

@anthonychu any update on this one? I think simply splitting the offending line into separate entries will solve it. Should be an easy change/fix.

The PR for this is closed so we need someone else to pick it up. The help text for create/update is nearly impossible to read for someone with a non-wide window (e.g. I use 80 columns)


Migration from django-mptt

It would be so nice to find a "migrate from django-mptt" section in the docs!

@matthiask hi, as i understand your idea i did it smth u can check #74.


Unsafe string replacement somewhere in `build-import-analysis

Describe the bug
Hey there. I'm one of the SvelteKit maintainers. First time filing an issue here.
I'm currently in the process of investigating https://github.com/sveltejs/kit/issues/6102. It appears some sort of unsafe string replacement is going on somewhere in the vite:build-import-analysis plugin. Let me give a bit of background before moving on...
SvelteKit offers static environment variables from a module we call $env/static/{public|private}. For these modules (which are virtual and injected by our plugin), we generate code that looks like:
// $env/static/public
export const PUBLIC_FOO = 'asdf';
export const PUBLIC_BAR = 'jlk;';

These can be imported like so: import { PUBLIC_FOO } from '$env/static/public'. When generating the code, we load them using the Vite loadEnv function, so you're familiar with the semantics.
This has worked great so far, but it appears that if the content of one of the variables is import.meta.env, something bad happens:
// $env/static/public
export const PUBLIC_BAD = 'do NOT use import.meta.env in this string!!';

It results in these errors:

import.meta.env is definitely the problem, as changing it to anything else (even just import.meta.en) doesn't trigger the issue.
Steps to reproduce:
git clone https://github.com/tcc-sejohnson/kit-repro-unsafe-string-replacement
pnpm i
pnpm build

To satisfy your curiosity, you can edit the .env file to show a successful build with any value other than import.meta.env.
Reproduction
https://github.com/tcc-sejohnson/kit-repro-unsafe-string-replacement
System Info
System:
    OS: Linux 5.17 Pop!_OS 22.04 LTS
    CPU: (12) x64 AMD Ryzen 5 5600X 6-Core Processor
    Memory: 21.25 GB / 31.32 GB
    Container: Yes
    Shell: 5.1.16 - /bin/bash
  Binaries:
    Node: 18.7.0 - ~/.nvm/versions/node/v18.7.0/bin/node
    Yarn: 1.22.17 - ~/.yarn/bin/yarn
    npm: 8.15.0 - ~/.nvm/versions/node/v18.7.0/bin/npm
  Browsers:
    Chrome: 104.0.5112.79
    Chromium: 83.0.4103.116
    Firefox: 101.0.1
  npmPackages:
    vite: ^3.0.9 => 3.0.9

Used Package Manager
pnpm
Logs
vite v3.0.9 building for production...
✓ 4 modules transformed.
[vite:build-import-analysis] Cannot destructure property 'line' of 'locate(...)' as it is undefined.
file: $env/static/public
error during build:
TypeError: Cannot destructure property 'line' of 'locate(...)' as it is undefined.
at augmentCodeLocation (file:///home/elliottjohnson/dev/github/sveltejs/repros/chungus-amongus/node_modules/.pnpm/rollup@2.77.3/node_modules/rollup/dist/es/shared/rollup.js:1868:17)
at Object.error (file:///home/elliottjohnson/dev/github/sveltejs/repros/chungus-amongus/node_modules/.pnpm/rollup@2.77.3/node_modules/rollup/dist/es/shared/rollup.js:21938:25)
at Object.transform (file:///home/elliottjohnson/dev/github/sveltejs/repros/chungus-amongus/node_modules/.pnpm/vite@3.0.9/node_modules/vite/dist/node/chunks/dep-0fc8e132.js:40776:22)
 ELIFECYCLE  Command failed with exit code 1.
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

I think the problem is in the vite:define plugin. The regex pattern considers strings even inside quotes.
I tried adding quotes to the regex, which resolves the specific bug in question, but it's not entirely robust:
const PUBLIC_TEST = "import.meta.env"  // ✅ ignored

const PUBLIC_TEST = `
import.meta.env.PUBLIC_TEST  // ❌ still matches
`

I remember seeing this issue in another area of code, where we ended up replacing the regex matcher with something more reliable.

Duplicate of #3304


GCS file resource?

Hello,
Is there a way to interact with objects inside a bucket?
Thanks

I'm looking for this as well. It seems as though this cookbook only handles managing the bucket themselves, which I would think only handles a small portion of what users need to do when using chef to automate interactions with Cloud Storage.
Is there anything in the works to be able to pull an object out of a bucket? At the moment it seems like shelling out and relying on gsutil is the only viable solution, which isn't ideal. Having this functionality to call a resource would be a great addition to this cookbook.


add directory config for specific setting project.

as example
[project-git]
recipe = zerokspot.recipe.git
repository = git://project.git
directory = ${buildout:directory}/project_dev
[project]
recipe = djangorecipe
settings = settings
eggs =
${buildout:eggs}
project = project_dev
extra-paths =
${buildout:parts-directory}

Hi :-) Sorry, but this package is no longer actively maintained. Andreas Motl will probably maintain his fork, though, but probably using a different package namespace. I will update this wiki page as well as the readme of this package as soon as all the preparations are complete :-)

okay, i will be rename my fork to another namestase. as example - apkawa.gitrecipe.git.


readall: check for shadowed aliases.

If an alias has the same name as a formula then weirdness will result so ensure this causes readall to fail.
Another attempt at the brew readall changes from #1850 (reverted in #2088). brew audit changes were split into https://github.com/Homebrew/brew/pull/2107.
Note to self: test this with HOMEBREW_DEVELOPER unset.

Note to self: test this with HOMEBREW_DEVELOPER unset.

Works as expected.


"help wanted" region `FLASH' overflowed by 1724 bytes

Hello !
thanks for your great work!
I can't wait to see how it turns out!
for the moment I'm stuck in the compilation process, I get the following error and I can't go any further:
<EMAIL_ADDRESS>build/gw_zelda3.elf section `.rodata' will not fit in region `FLASH'
<EMAIL_ADDRESS>region `FLASH' overflowed by 1724 bytes
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:475: build/gw_zelda3.elf] Error 1
make[1]: Leaving directory '/home/gusse/game-and-watch-zelda3'
make: *** [Makefile:553 : flash] Erreur 2

I made the test on 2 GnW a mario and a zelda, and the trouble is the same, here is the command that I use:
make INTFLASH_BANK=2 EXTFLASH_SIZE_MB=64 EXTFLASH_OFFSET=1048576 ADAPTER=stlink OPENOCD=/opt/openocd-git/bin/openocd GNW_TARGET=mario LANGUAGE=us flash

And some other variations have the same result. I also do a make clean before compilation...
I tried several commands without success.
I specify that I am not 100% at ease under linux, but I manage.
For information, I manage to flash without problem the retro go coverflow version in dual boot.
My GnW are upgraded to 64Mb too.
If I miss some information don't hesitate to ask !
Thanks in advance for your help!

The error you're currently seeing is due to using gcc 11.3.1 instead of a more modern version (12.2.1) and is purely a zelda3 issue. Checkout the stacksmashing discord server (#homebrew channel) for more rapid responses.

great !! thank you !! I have to check that, and I have found this way but I have to test that !!

@GusseDev Sorry for being so slow to react.. As @BrianPugh mentionned using a newer gcc should work better. However I've just pushed a few improvements that include some memory reorg with increased margins (a few KB) to try a make it work on gcc 11 or 10.

no worries! you do it for free and happily, it's just great what you did!
I don't think you should bother adjusting for older versions 😊, just document it and it's beautiful!
Thanks again for your great work, I'm going to try this out!

Thanks, and please feel free to give feedback if things need to be improved.
The "section overflow" issue has risen several times already and in some cases I thinks specific builds of gcc 12 (for raspberry pi IIRC) did not fix it. I'm hoping that with bigger margins (free space was under 1KB at some point) it will suit more configs.

I have updated my gcc version to gcc 12.3:
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-ALHxjy/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04)

But I get another error:
....bi-gcc/11.3.1-1.1.2/.content/bin/../lib/gcc/arm-none-eabi/11.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-readr.o): in function `_read_r':
(.text._read_r+0x10): warning: _read is not implemented and will always fail
<EMAIL_ADDRESS>build/main.o: in function `app_main':
main.c:(.text.app_main+0x300): undefined reference to `zelda_extflash_assets_length'
<EMAIL_ADDRESS>main.c:(.text.app_main+0x304): undefined reference to `zelda_extflash_assets'
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:476 : build/gw_zelda3.elf] Erreur 1
make[1] : on quitte le répertoire « /home/gusse/game-and-watch-zelda3 »
make: *** [Makefile:554 : flash] Erreur 2

Have you an idea ? or maybe I forget something...
I have deleted my folder and update to your latest version
Thank you

What command are you running?
Can you see the source files generated from the ROM assets in Core/Src/Porting/ ?

hmmm sorry I have made a mistake in my command (I have set Language params twice...)
No it's flash ! but no boot, I have to adjust setting, I'm on the good way.
just for information, the command I have used :
make -j12 INTFLASH_BANK=1 OPENOCD=/opt/openocd-git/bin/openocd LANGUAGE=us GNW_TARGET=mario flash ADAPTER=stlink LARGE_FLASH=1

No error during flashing? What's your flash chip? I'll try on first bank since I haven't tried it much that way.

No issues on first bank on my side.

Without offset params, it's flash, but no boot with the previous command.
And with you command adapted accordingly with my GnW with 64Mb memory :
make INTFLASH_BANK=2 EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 ADAPTER=stlink OPENOCD=/opt/openocd-git/bin/openocd GNW_TARGET=mario LANGUAGE=fr flash

Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
Info : clock speed 1800 kHz
Info : STLINK V2J29S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.117383
Info : [stm32h7x.cpu0] Cortex-M7 r1p1 processor detected
Info : [stm32h7x.cpu0] target has 8 breakpoints, 4 watchpoints
Info : starting gdb server for stm32h7x.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
[stm32h7x.cpu0] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08018170 msp: 0x20011330
Info : Device: STM32H7Ax/7Bx
Info : flash size probed value 128k
Info : STM32H7 flash has dual banks
Info : Bank (0) size is 256 kb, base address is 0x08000000
Initializing Octo-SPI interface
Info : Device: STM32H7Ax/7Bx
Info : flash size probed value 128k
Info : STM32H7 flash has dual banks
Info : Bank (1) size is 256 kb, base address is 0x08100000
** Programming Started **
Info : device has to be switched to 4-byte addresses
Info : 4-byte address parameter table
Info : valid SFDP detected
Info : flash1 'sfdp' id = 0x3a25c2 size = 65536 KiB
Error: FSIZE in DCR(1) doesn't match actual capacity.
Warn : Adding extra erase range, 0x9023a31c .. 0x9023ffff
Error: Sector erase command not accepted by flash1. Status=0x42
Error: Flash sector_erase failed on sector 16
Error: failed erasing sectors 16 to 35
** Programming Failed **
shutdown command invoked

And the exact reference of the chip I use is: MX25U51245GZ4I00
don't hesitate to ask me to test something ;)

I have made some tests on another upgraded 64Mb GnW Mario, with the following command :
make INTFLASH_BANK=2 EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 ADAPTER=stlink GNW_TARGET=mario LANGUAGE=fr flash

and I still get this error :
** Programming Started **
Info : device has to be switched to 4-byte addresses
Info : 4-byte address parameter table
Info : valid SFDP detected
Info : flash1 'sfdp' id = 0x3a25c2 size = 65536 KiB
Error: FSIZE in DCR(1) doesn't match actual capacity.
Warn : Adding extra erase range, 0x9023a31c .. 0x9023ffff
Error: Sector erase command not accepted by flash1. Status=0x42
Error: Flash sector_erase failed on sector 16
Error: failed erasing sectors 16 to 35
** Programming Failed **

Did you think my command is good ?
I have tried to flash a retro go and it's still ok !
Thanks again !

I figure you have no issue flashing the original/patched firmware or retro-go?
It's surprising that it would flash ok without offset..

maybe try setting the OPENOCD path? You're using the patched openocd?

Yes I use the patch version, I try again with OPENOCD setting
What command do you suggest to flash a 64MB memory?

I don't have a flash bigger than 16MB, so I can't try it myself. I think people have successfully flashed 64MB chips. Your flags look alright. Make sure to set LARGE_FLASH=1 to disable verify (which seems to be buggy on large chip) and enable 32-bits addressing.

To be a bit more clear, this command sounds good:
make INTFLASH_BANK=2 EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 LARGE_FLASH=1 OPENOCD=/opt/openocd-git/bin/openocd ADAPTER=stlink GNW_TARGET=mario flash

with LARGE_FLASH=1 error is away !
but it still not bootable (on dual boot GAME+LEFT -> black screen).
Here is my command:
make -j12 INTFLASH_BANK=2 EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 ADAPTER=stlink OPENOCD=/opt/openocd-git/bin/openocd GNW_TARGET=mario LANGUAGE=fr LARGE_FLASH=1 flash

and the end message (unable to reset is usual with Stlink if I'm not wrong) :
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
Info : clock speed 1800 kHz
Info : STLINK V2J29S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.114304
Info : [stm32h7x.cpu0] Cortex-M7 r1p1 processor detected
Info : [stm32h7x.cpu0] target has 8 breakpoints, 4 watchpoints
Error executing event examine-end on target stm32h7x.cpu0:
read_memory: failed to read memory
in procedure 'program'
Info : starting gdb server for stm32h7x.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
Error executing event examine-end on target stm32h7x.cpu0:
embedded:startup.tcl:1187: Error: read_memory: failed to read memory
in procedure 'program'
in procedure 'ocd_process_reset'
in procedure 'ocd_process_reset_inner' called at file "embedded:startup.tcl", line 1187
** Unable to reset target **
shutdown command invoked

I've never seen this openocd error..
Also I see you're setting LANGUAGE=fr, do you have both US en FR roms? Maybe try without setting the language first?

I make test without language param, and it doesn't run, so I have put LANGUAGE=us
make -j12 INTFLASH_BANK=2 EXTFLASH_SIZE_MB=63 EXTFLASH_OFFSET=1048576 ADAPTER=stlink OPENOCD=/opt/openocd-git/bin/openocd GNW_TARGET=mario LANGUAGE=us LARGE_FLASH=1 flash
and I get:
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
Info : clock speed 1800 kHz
Info : STLINK V2J29S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.115844
Info : [stm32h7x.cpu0] Cortex-M7 r1p1 processor detected
Info : [stm32h7x.cpu0] target has 8 breakpoints, 4 watchpoints
Error executing event examine-end on target stm32h7x.cpu0:
read_memory: failed to read memory
in procedure 'program'
Info : starting gdb server for stm32h7x.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
Error executing event examine-end on target stm32h7x.cpu0:
embedded:startup.tcl:1187: Error: read_memory: failed to read memory
in procedure 'program'
in procedure 'ocd_process_reset'
in procedure 'ocd_process_reset_inner' called at file "embedded:startup.tcl", line 1187
** Unable to reset target **
shutdown command invoked

It doesn't run? What does it do?
Maybe also drop the parallel build for now? Might give a more readable output.

I turn off parallel build, and press reset on Gnw during flash, the process have run without error on terminal:
Info : The selected transport took over low-level target control. The results might differ compared to plain JTAG/SWD
none separate
Info : clock speed 1800 kHz
Info : STLINK V2J29S7 (API v2) VID:PID 0483:3748
Info : Target voltage: 3.119384
Info : [stm32h7x.cpu0] Cortex-M7 r1p1 processor detected
Info : [stm32h7x.cpu0] target has 8 breakpoints, 4 watchpoints
Info : starting gdb server for stm32h7x.cpu0 on 3333
Info : Listening on port 3333 for gdb connections
[stm32h7x.cpu0] halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x08018170 msp: 0x20011330
Info : Device: STM32H7Ax/7Bx
Info : flash size probed value 128k
Info : STM32H7 flash has dual banks
Info : Bank (0) size is 256 kb, base address is 0x08000000
Initializing Octo-SPI interface
Info : Device: STM32H7Ax/7Bx
Info : flash size probed value 128k
Info : STM32H7 flash has dual banks
Info : Bank (1) size is 256 kb, base address is 0x08100000
make[1]: Leaving directory '/home/gusse/game-and-watch-zelda3'

BUT, on GNW when I try to boot on the second bank (GAME + LEFT) I get a blue screen with the following message :
FATAL EXCEPTION Hardfault
PC=0x08128812 LR=0x0000ef4d
init_mx_issi
Found config: MX25U51245G
Status: 40
JEDEC_ID: C2 25 3A

Unfortunately I have to go for now, I can do additionnal test later, I also make some test with 16Mb memory, I have some under my hand
Thanks again for your time and your awesome job !


reflect the real id in the glitch

Maybe we need to edit the first paragraph of that slide also -- it seems that we are not use a play-all-model-animations component anymore?

If it's not being used, then yeah we can remove, thanks!


[Request] Add ResilioSync

https://www.resilio.com/individuals/

Implemented in nonportable/resilio-sync-np


Compatibility with PPM images with >8 BPC?

As PPM is an arbitrary data format, it can support an arbitrary amount of bits per channel. However, this only supports PPM images with 8 BPC. Is there an easy way of modifying it to accept 10 or 16 bpc (as is common in HDR images)?

Not sure how "easy" it would be. There is some infrastructure for reading files and so on, but having had a quick look at the code it might be non-trivial to extend to an arbitrary BPC. This would be a nice feature to add, but not something I am looking to do right now, unfortunately. I would happily review any such attempts though.


click/x-click header support for notifications on Android & iOS

:bulb: Idea

When a notification that has a click/x-click header associated with it, the click action should either open the link in the header, or a button should be included that opens the header link. Anyone coming from PushBullet would like this.
:computer: Target components

Android app

It does that. If tap on the notification it'll open the click link. That's literally what it's for.

My bad, it does work on Android, it doesn't seem to work for me on iOS though

Closed in favor of #586 (duplicate)


chore: 🔧  Set "main" as default release branch

Rationale:
As maintainer of Synergy, I want to have a clean state when we release our first official version.
The release-fallback branch was created and added temporarily to the branches in the release config of the tokens, assets, and components while the setup for the project wasn't complete.
Action Items:

[ ] Remove release-fallback branch
[ ] Remove rule  in GitHub settings: https://github.com/SickDesignSystem/synergy/settings/branch_protection_rules/
[ ] Adapt every semantic-release config to remove release-fallback and set main as default release-branch  (packages/(components/assets/tokens)/package.json)

Could you please take a look @klaarseSICKAG ?


Support range in required-version setting

Currently, it appears that the required-version [1] setting allows just a single specific version to be specified. When a version of ruff is present that differs from this version, the ruff tool errors, preventing checks from running.
The ask here is to allow range syntax, e.g. >=, ~, etc., or perhaps treat the required-version as a minimum similar to target-version, so that ruff does not fail to run in the scenario that e.g. a developer upgrades ruff in their environment but is working within a repo that wants to ensure that everyone is on some minimum version of ruff.
$ ruff --version
ruff 0.3.0

$ cat ruff.toml
required-version = "0.2.2"

$ ruff check ./src/example/file.py
ruff failed
  Cause: Required version `0.2.2` does not match the running version `0.3.0`

[1] https://docs.astral.sh/ruff/settings/#required-version

I think it'd be reasonable to support >= here.

(We just need to make it backwards-compatible such that "0.2.2" means "==0.2.2".)

I think it'd be reasonable to support >= here.

I think we would need to support a full semver syntax similar to package.json engines or it might be surprising that e.g. `<= isn't supported which, IMO, is entirely reasonable too

Correct, that’s what I meant — we should use Python’s PEP 440 and PEP 508 specifiers since they’re already native, standardized, used in the same TOML file, and we have parsers for them. I don’t think there needs to be any more decision-making than that, personally!

Seems reasonable, although PEP440 is probably more flexible than what we need (local versions). PEP508 seems unrelated because we don't need a name portion.

👍 The gist of it is: it should just function identically to requires-python which is a standardized field that we already parse and support (see: crates/ruff_workspace/src/pyproject.rs).


chore(deps): update common-dev-assets digest to 9afd4ef

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
c72cc0b -> 9afd4ef

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

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

This PR has been generated by Renovate Bot.

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


Fixed typos

Accepting this for now. but please refrain from creating pull request for just trivial changes like these


fade-issue first split fix

Splitting Fade into 2 separate FadeIn and FadeOut.
each fade has the parameters: duration (number) and curve (string).
Updating CrossFade to use the new FadeIn, FadeOut instead of the previous Fade(is_in), Fade(is_in=false).

L = FadeOut(duration=duration)
R = FadeIn(duration=duration)*Shift(-duration)

#TODO:

better name the current default fade curve.
define and implement other curve types.

Thank you for the feedback!
Working on your comments.

Hi, sorry, I didn't see your replies in the interface for some reason (I was working on the "code" tab and it just wasn't there).
It looks quite good now, also thanks for adding docstrings!
Your point about the default values is valid, though personally in this case I'd still prefer to pay the price of setting the defaults three times, since I find the current solution quite awkward. Luckily Python already has a solution for our case. I think the following should work (constructor of FadeIn, should be similar for FadeOut):
def __init__(self, *args, **kwargs):
    super().__init__(True, *args, **kwargs)

What this does is basically pass all arguments exactly as they were given (i.e. 'positional' vs. 'keyword' arguments) to the constructor of the superclass Fade, while also specifying the value of the first argument is_in (there is some explanation here. Please ensure that this works!
Also, I think for the constructor of Fade we can use something like this:
def __init__(self, is_in=True, duration=3e3, curve="linear", *, degree=1):

This means the that degree argument has to be given as a keyword argument, forcing the user to write clearly.
Also, I think we can change the default degree to 2, as otherwise users that just mess around with the curves will hear no difference when they try polynomial.
As for the default duration, it's unclear what would be a good value, it's all kind of arbitrary, but I think maybe 1e3 would be better.

Hi, sorry, I didn't see your replies in the interface for some reason (I was working on the "code" tab and it just wasn't there).
It looks quite good now, also thanks for adding docstrings!
Your point about the default values is valid, though personally in this case I'd still prefer to pay the price of setting the defaults three times, since I find the current solution quite awkward. Luckily Python already has a solution for our case. I think the following should work (constructor of FadeIn, should be similar for FadeOut):
def __init__(self, *args, **kwargs):
    super().__init__(True, *args, **kwargs)

What this does is basically pass all arguments exactly as they were given (i.e. 'positional' vs. 'keyword' arguments) to the constructor of the superclass Fade, while also specifying the value of the first argument is_in (there is some explanation here. Please ensure that this works!
Also, I think for the constructor of Fade we can use something like this:
def __init__(self, is_in=True, duration=3e3, curve="linear", *, degree=1):

This means the that degree argument has to be given as a keyword argument, forcing the user to write clearly.
Also, I think we can change the default degree to 2, as otherwise users that just mess around with the curves will hear no difference when they try polynomial.
As for the default duration, it's unclear what would be a good value, it's all kind of arbitrary, but I think maybe 1e3 would be better.

Thanks!

degree = 2  done.
regarding FadeIn() \ FadeOut():

def __init__(self, *args, **kwargs):
    super().__init__(True, *args, **kwargs)

It does work, but I'm not sure I am a fan of that.
The reason is UX - with this code the editor doesn't know what are the expected arguments, so it does not show or suggest any. That can easily lead to typing errors, invalid inputs, misunderstanding and the making the old fashioned Fade() more favorable, since it has all these advantages.
My original way was kind of having the "best of all worlds" - all arguments were specified ,and defaulted to None, that way the user can specify only the parameters he wants (keyword style), and all None arguments , meaning not specified by the user,  defaults in one place in the code.
Is it the cleanest version? I'm not sure either. each method has it own upsides and downsides.
What do you think?

I am not sure I agree for adding * before degree. I am not against it, just not convinced it does serve a purpose. whatever you decide! :)

I see your point, but still I think that manually handling the default values is very awkward. Note that although it would be possible to automatically complete the argument names, the users still will have no idea what sort of values are accepted without seeing the default values. Also, one can argue that any user attempting to adjust the fade will have to, at some point, consult the documentation anyway (they can't guess the curve names). Also note that having degree listed is not of much help, in the future I estimate there will be a bunch of other arguments which are only relevant for certain curves (this is incidentally why I suggested adding the *, these arguments are better specified explicitly),
I am on board with either the *args, **kwargs solution or with repeating the defaults for all 3 classes. If we pick the latter, ideally there would be defaults only for FadeIn and FadeOut, but this may break some existing code for users, so maybe wait a few more versions before removing defaults from Fade. I say go ahead and pick whichever you like more of these two options.
As for the * before degree, I think it's not a major difference, but ideally I wouldn't want users to just give a number for such an argument without being explicit, so I think let's go for it. If at one point we regret and remove the *, that would not break backward compatibility, which cannot be said for the opposite situation.

Hi, I added two last minor corrections, otherwise we're done. Congrats!


[CAMEL-13464] Olingo4: use endpointHttpHeaders for EDM, solving authentication issue

Thanks, merged on master


Which proxy - os's or docker's - will be used by the scripts before entering into docker environment of apollo?

Hi,
Which proxy settings, OS's proxy or docker's, will be used by docker/scripts/dev_start.sh when downloading/pulling relevant stuff?
More generally speaking, which proxy - os's or docker's - will be used by the scripts before entering into docker environment of apollo?

dev_start.sh didn't do any thing special for proxy settings.
Correcty me if wrong: When you set the HTTP_PROXY and HTTPS_PROXY environment variables,  docker daemon will respect your settings.
https://docs.docker.com/engine/reference/commandline/pull/#proxy-configuration


[Feature] SeekTo / JumpTo method on timeline/animations

Could a timeline (or individual animation) provide a seekTo / jumpTo method?
I may have missed something and this already exists, but is perhaps undocumented?

Ah yeah, sorry I missed that it wasn't read-only!


Remove old code from MUX

This change is

PR is added to the queue for testing as 1. task. (1287328)

Test (Success) 92434721 build is completed (1287328)
See https://github.com/ThaliTester/TestResults/tree/924347211287328_Master_901_yaronyg/ for the logs

Test<PHONE_NUMBER>87328(1287328) has failed
See https://github.com/ThaliTester/TestResults/tree/924347211287328_Master_901_yaronyg/ for the fail logs

Reviewed 12 of 12 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

test/www/jxcore/bv_tests/testThaliMobileNative.js, line 368 at r1 (raw file):

    logger.info(connection);

    logger.error('foo ' + JSON.stringify(connection));

NB: Looks like it shouldn't be here.

Comments from Reviewable

PR is added to the queue for testing as 2. task. (3a23a0d)

PR is added to the queue for testing as 3. task. (4c5b967)

Review status: 11 of 20 files reviewed at latest revision, 1 unresolved discussion.

test/www/jxcore/bv_tests/testThaliMobileNative.js, line 368 at r1 (raw file):
Previously, chapko (Eugene Chapko) wrote…
> NB: Looks like it shouldn't be here.

Fixed

Comments from Reviewable

Test (Success) 92434721 build is completed (3a23a0d)
See https://github.com/ThaliTester/TestResults/tree/924347213a23a0d_Remove_old_code_from_MUX_yaronyg/ for the logs

Test 924347213a23a0d(3a23a0d) has failed
See https://github.com/ThaliTester/TestResults/tree/924347213a23a0d_Remove_old_code_from_MUX_yaronyg/ for the fail logs

Test (Fail) 92434721 build is completed (4c5b967)
See https://github.com/ThaliTester/TestResults/tree/924347214c5b967_Remove_old_code_from_MUX_yaronyg/ for the logs


Polish geometry.py

geometry.py is fairly unique in that it has stabilized quickly. It is also fairly easy to comprehend on its own.
There are a few missing docstrings (args and return types) etc. There are probably also a few edge cases that could used tests for. Finally, there may be optimizations that could be done. If you want to do optimization, I would expect a serious attempt at profiling, but bear in mind that I don't want to sacrifice readability.

I'd be interested in helping out with this. Would you prefer one pull request, or several small, focused ones (one regarding docstrings, one regarding tests, etc)?

Great! Feels like a single PR thing.


[Feature Request]: Add the ability to aggregate admin-level data by a higher admin area

Provide a clear and concise description of what the problem is.
As an analyst, I want to be able to calculate statistics at a different admin level than what is available by default in a layer.
For example, the number of food insecure people in an area may be available at admin level 2 (district), but I want to be able to see this data at admin level 1 (province) by aggregating each admin 2 (district) within that area.
Provide a clear and concise description of what you want to happen.
Within the run analysis feature, add a new analysis type to aggregate admin level stats. We'll need to separate analysis types into two buckets for now:

Hazard analysis (same as current)
Admin data analysis (new)

We can use a radio button for the analysis type selection.
If admin data analysis, the next steps are:

Select an admin level data layer
Choose an analysis. For now, this just aggregate
Choose an aggregation level. This should be based on the available admin boundary files above the selected admin level data layer
If the admin level data layer has dates, there should be a date selection step
The output should be rendered in the map using the same styles as the underlying admin level data layer but with the new boundary
User should have the option to view the output as a table as download as CSV

I'll add mockups later
Is there anything else you can add about the proposal? You might want to link to related issues here, if you haven't already.
This is a more detailed issue covering what was mentioned in point 1 of issue https://github.com/WFP-VAM/prism-app/issues/322

Replaced by https://github.com/WFP-VAM/prism-app/issues/1052


[C-2044] Prevent non-admin GH users from setting up GH

Every time users hit GH "Connect button", we trigger an informative dialog explaining that the process can only be concluded by GH admin users. Users can either continue to GH or jump into to Docs page for further reading (opening in the tab).

From SyncLinear.com | C-2044

i think the CTAs should be like:
Are you the admin of your GitHub organization?

Yes, I'm the admin of our GitHub organization

Invite admin. → leading to the user settigs
I would also not use primary color for option 1, so the user really stops and thinks about it for a second.
cc @nunoeufrasio

I agree with @jonathimer here and it's a good point on the button. Since it has so much feature in the dialog, I think it will be easier for users to just click on the continue button and not read the message.
I like the suggestions above 😄

Partially agree with the 2nd CTA, as the GH admin may already be a workspace user, but here's the an update with some copy tweaks, to prevent misunderstandings around crowd.dev admin / GH admin

@nunoeufrasio the image is not visible :)

@peoray 😉


Hashing BIP-329 fields for indexing and searching

Because our BIP-329 fields are encrypted and the current searching and filtering is done on the client side only, we will introduce hashed fields to find and filter data.
Using this technique, we can have encrypted data while preserving security.
Also, filtering on the hashed values is faster and more efficient than decrypting the data over and over again.
See also #9

Done type_ref_hash


Not working on tablets and phones.

Is there any way to make this work on tablets and phones? Everything works awesome on my PC but nothing happens on my tablets and phone.

Found a soulution, it was disabled for mobile devices by default, just added:
window.sr = new scrollReveal({
mobile: true
});
and it is workling. Awesome plugin man, love it so much! Thanks!

Thanks @nikola1970
:+1:
I’m actually going to enable that by default in v3.

That would be logical to be set true by default. You are welcome :)


added ssl verify parameter to util.openURL and wps

... ssl verification is enabled by default. When creating a wps one can disable the ssl verification:
wps = WebProcessingService(url="https://locahost:8443/wps", verify=False)

In addition one can provide an optional "headers" parameter like in wms.
See #315 and #321.

tests all fail to due connection timeout in tests/doctests/wmts_SFSWorldWMTSCapabilities.txt
i've updated this patch according the comments in #315.
Do you know a better way to disable ssl verification?

this patch is now too old ...


Function Instructions

As a program user
I want to call and return from labels
So that I can use functions in my code.
Request Description
Implement function calls and returns. Call should act exactly as jal and return should load the values specified into the return registers and then jump to the line stored in $ra.
call (line number / label, equivalent to ‘jal’)
return (0-3 registers / immediate arguments copied into return registers)

We may want to automatically store $ra on the stack upon a call/jal, and then restore it from the stack on a return. This decision is ultimately up to the implementer.


store generated code for inspection

write the generated code at compile time to a file in target/

fixed in 99bb3fe


Edit code and save to DB

We can use code-mirror or monaco.
(code-mirror might be easier to setup)

Learn.nuxt has implemented this if they wouldn't mind using the code :) -> https://github.com/nuxt/learn.nuxt.com/tree/main

It almost could be store into a pkg for vue / nuxt to make integration a little easier.

Thanks @cpreston321 ! Yup I know about Learn.Nuxt using Monaco instance. The more I think about it the more I feel like it's too much trouble and challenges just to make monaco works.
Furthermore, I think editing code allow user to made some small change here and there and that's it.


UnboundLocalError: local variable 'bo' referenced before assignment

Using bayes_opt with a low value for max_fevals or time_limit (for example, 10) results in the following exception:
Traceback (most recent call last):
  File "tune.py", line 91, in main
    tune_kernel(file, args)
  File "tune.py", line 48, in tune_kernel
    **options)
  File "../external/kernel_launcher/python/kernel_launcher/reader.py", line 312, in tune
    **options)
  File "/home/sheldens/miniconda3/lib/python3.7/site-packages/kernel_tuner/interface.py", line 553, in tune_kernel
    results, env = strategy.tune(runner, kernel_options, device_options, tuning_options)
  File "/home/sheldens/miniconda3/lib/python3.7/site-packages/kernel_tuner/strategies/bayes_opt.py", line 136, in tune
    return bo.results, runner.dev.get_environment()
UnboundLocalError: local variable 'bo' referenced before assignment

My suspicion is that the number of function evaluations is so low that Bayesian optimization is not able to initialize its model?
https://github.com/benvanwerkhoven/kernel_tuner/blob/e47872a07ee7df2e57ad77d12edf9decaa4ef335/kernel_tuner/strategies/bayes_opt.py#L129-L136

See the following minimal example:
import kernel_tuner

source = """
__global__
void foo() {

}
"""

problem_size = 100
args = []
tune_params = dict(
    block_size_x=[1, 2, 4, 8, 16, 32, 64],
    block_size_y=[1, 2, 4],
    block_size_z=[1, 2, 4],
)

kernel_tuner.tune_kernel(
        "foo",
        source,
        100,
        args,
        tune_params,
        strategy="bayes_opt",
        strategy_options=dict(
            max_fevals=5
        )
)

That results in the following exception:
Traceback (most recent call last):
  File "test.py", line 26, in <module>
    max_fevals=5
  File "/home/sheldens/miniconda3/lib/python3.7/site-packages/kernel_tuner/interface.py", line 553, in tune_kernel
    results, env = strategy.tune(runner, kernel_options, device_options, tuning_options)
  File "/home/sheldens/miniconda3/lib/python3.7/site-packages/kernel_tuner/strategies/bayes_opt.py", line 136, in tune
    return bo.results, runner.dev.get_environment()
UnboundLocalError: local variable 'bo' referenced before assignment

I'm using the latest master branch: e47872a07ee7df2e57ad77d12edf9decaa4ef335


Don't strip Script tag elements

Current Situation
The client code currently strips script tags and replaces them with div.
For example, this script element wont appear within the browser's DOM.

@component
def my_component():
   return html.script("console.log('hello_world');")

Proposed Actions
Remove this behavior, since we now officially support script within IDOM.

@Archmonger
Please assign this stuff to me, I think I can do this.

@rishabhRsinghvi We do not use the GitHub issue assignment feature. Feel free to open a PR and link it to this issue.


[SP-2779] Backport of PDI-13918 - Get File Names throws ArrayIndexOutOfBoundsException when Filename is defined in a field option is checked (6.1 Suite)

Backport of https://github.com/pentaho/pentaho-kettle/pull/2655.
In https://github.com/pentaho/pentaho-kettle/pull/2721 there was a typo: fileName instead of filename
@mchen-len-son , review this PR please

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
ant -Dpentaho.resolve.repo=http://ivy-nexus.pentaho.org/content/groups/approved -Dtestreports.dir=bin/reports/unit-test -f engine/build.xml clean-all resolve jacoco && ant -Dpentaho.resolve.repo=http://ivy-nexus.pentaho.org/content/groups/approved -Dtestreports.dir=bin/reports/integration-test -f engine/build.xml jacoco-integration checkstyle publish-local

Cleanup Commands
rm -r ~/.ivy2/local || echo no publish local to remove

Changed files
  engine/src/org/pentaho/di/trans/steps/getfilenames/GetFileNamesMeta.java

Unit test coverage change
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.
org.pentaho.di.core.auth.core.impl.DefaultAuthenticationConsumerFactory

Branch Change:  + 7.14%
Complexity Change:  + 7.69%

org.pentaho.di.job.entries.sql.JobEntrySQL

Instruction Change:  + 1.64%
Line Change:  + 1.97%

org.pentaho.di.repository.kdr.KettleDatabaseRepositoryCreationHelper

Branch Change: -1.64%:small_red_triangle_down:
Complexity Change: -.69%:small_red_triangle_down:
Instruction Change: -2.43%:small_red_triangle_down:
Line Change: -2.95%:small_red_triangle_down:

org.pentaho.di.trans.steps.excelwriter.ExcelWriterStepMeta

Branch Change:  + 1.28%
Complexity Change:  + .79%
Instruction Change:  + .08%

org.pentaho.di.trans.steps.getfilenames.GetFileNamesMeta

Instruction Change:  + .04%

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change:  + 1.18%
Complexity Change:  + 1.35%

org.pentaho.di.trans.steps.replacestring.ReplaceStringMeta

Instruction Change: -.07%:small_red_triangle_down:

org.pentaho.di.trans.steps.textfileinput.TextFileInputMeta

Branch Change:  + .53%


Screen goes white/gray in certain areas

Mod Version: 1.11.2-<IP_ADDRESS>
Forge Version: 2386
Link to crash log (if applicable): no crash
Description:
When I tested this, it was working fine. But once I'd been playing a while and was mining, there area areas that when I walk into them, the screen goes COMPLETELY white/gray. If I walk back out of the areas, graphics return. Walk back in, blank again. Areas are larger than one chunk. Rebooted both client and server, no resolution. Disabled the mod, and graphics back to normal.
Btw, I said gray/white, but once I go back to look it's more of sky blue. It's darker if I don't have night vision on but still blank.

Modpack, and what biome?

My own modpack, Craftorium Alpha. Has been uploaded here if you need to see the dependency list. Biome is BiomesOPlenty Coniferous Forest.

I wonder if there is a biome nearby that has fog from BoP

There's not any of the biomes (such as wasteland) near where I'm having the issues. However, I do have Optifine installed. With Optifine disabled, things work. So on the Fog issue, I turned off Fog in Optifine and everything re-appeared.
So the bug appears to be related to FOG being enabled in Optifine... Turning it off is an OK workaround but would like to see a fix of some kind as Optifine is pretty much a requirement due to how laggy modded minecraft can be without it.

Fog handling in Minecraft is a pain.  If you have more than one mod trying to manipulate fog you can get strange things like this.  If you have OptiFine, BoP, AND Dynamic Surroundings installed at the same time you will get what you experienced.  I added a way to disable all fog processing in DS because of this issue.  Not much I can do beyond that.

For reference [#62]

I tested BoP, OptiFine, DS combo.
DS version 1.11.2-<IP_ADDRESS>
BoP version 1.11.2-<IP_ADDRESS>7
OptiFine version 1.11.2 HD U C3
BoP+OptiFine+DS = incorrect fog.
BoP+OptiFine = correct fog.
I turned off all fog option in DS. but incorrect. Fog correct is when I uninstall DS.

I made some fog changes and tested them with the latest BoP and OptiFine for 1.12.2 and fog rendered fine.  I am going to mark fixed for v<IP_ADDRESS>.

Pushed v<IP_ADDRESS> with fog compat changes with BoP.


uint8_t class; in CherryUSB conflict with reserved keyword c++

Hi, I am trying to use cherryUSB on ESP32 with C++. I had it running on previous versions, but in the current version, the usbh_class_info structure in usbh_core.h contains the keyword class, causing a conflict with C++.

So we should consider changing class to another keyword (I have seen this issue since 2022, in issues #8 , but it seems it has not been completely fixed)?

I'm also trying to find a solution that doesn't modify the CherryUSB source code, but it seems extern "C" { } doesn't help.

This #8 is fixed for device and no host stack at that time, i will consider to fix this in next release.

You can follow this demo https://github.com/CherryUSB/cherryusb_esp32/tree/latest, and do not include usbh_core.h in c++ source file.

Thank you, this works.


Improvements to Build Screen Especially for Firefox

Details

Project URL: http://readthedocs.org/projects/requests-oauthlib/
Build URL (if applicable):http://readthedocs.org/projects/requests-oauthlib/builds/6165196/
Read the Docs username (if applicable):

Expected Result
The page should look the same as it does in Chrome/Webkit.
Actual Result
In Firefox, the build screen scrollbars are unstyled and awkward. While this is an improvement over content being completely invisible before (https://github.com/rtfd/readthedocs.org/pull/3569), but it could be better.

@agjohnson I would like to work on this!

@bansalnitish Go ahead! :D


allow customization of authorizeURL

This resolves #644
This way you can subclass Oauth1Swift and return your own authorize url string
class EtradeOAuth1Swift: OAuth1Swift {
  override func getAuthorizeURLString(authorizeURL: String, requestToken: String, consumerKey: String, callbackURL: String) -> String {
    return "\(authorizeURL)?key=\(consumerKey)&token=\(requestToken)";
  }
}

I have made a parameter instead for your needs
Even if having a function to override is good, the one of this PR pass argument like authorizeURL but use self. authorizeURL


No RDS text

I dont get any RDS text. Is there anything i am missing?
$ rtl_fm -f 95.7e6 -M wbfm -s 200000 -r 48000 - |./redsea -u --feed-through|aplay  -f S16_LE -r48000
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Tuner gain set to automatic.
Tuned to 96016000 Hz.
Oversampling input by: 6x.
Oversampling output by: 1x.
Buffer size: 6.83ms
Sampling at 1200000 S/s.
Output at 200000 Hz.
Playing raw data 'stdin' : Signed 16 bit Little Endian, Rate 48000 Hz, Mono

I also tried without the -u option, and the result was the same.
The following does give some text:
$ rtl_fm -M fm -l 0 -A std -p 0 -s 171k -g 40 -F 9 -f 95.7e6 |./redsea
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
\Found Rafael Micro R820T tuner
Tuner gain set to 40.20 dB.
Tuned to 96042000 Hz.
Oversampling input by: 8x.
Oversampling output by: 1x.
Buffer size: 5.99ms
Exact sample rate is: 1368000.013046 Hz
Sampling at 1368000 S/s.
Output at 171000 Hz.
{"pi":"0x2B25"}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"group":"2A","pi":"0x2B25","prog_type":"Culture","tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ps":" on 95.7","ta":false,"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x2B25","prog_type":"Culture","ta":false,"tp":false}
^CSignal caught, exiting!

User cancel, exiting...
Signal caught, exiting!

How do i get RDS with wbfm?

I could not find any station with this PI Code.
What about other frequencies?

Here is another one
$ rtl_fm -M fm -l 0 -A std -p 0 -s 171k -g 40 -F 9 -f 97.9e6 |./redsea
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Tuner gain set to 40.20 dB.
Tuned to 98242000 Hz.
Oversampling input by: 8x.
Oversampling output by: 1x.
Buffer size: 5.99ms
Exact sample rate is: 1368000.013046 Hz
Sampling at 1368000 S/s.
Output at 171000 Hz.
{"group":"2A","pi":"0x1511","prog_type":"Varied","tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x1511","prog_type":"Varied","ta":false,"tp":false}
{"debug":["TODO 8A"],"group":"8A","pi":"0x1511","prog_type":"Varied","tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x1511","prog_type":"Varied","ta":false,"tp":false}
{"group":"3A","open_data_app":{"app_name":"RDS-TMC: ALERT-C","oda_group":"8A"},"pi":"0x1511","prog_type":"Varied","tmc":{"system_info":{"is_encrypted":true,"is_on_alt_freqs":false,"scope":["urban"]}},"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x1511","prog_type":"Varied","ta":false,"tp":false}
{"group":"8A","pi":"0x1511","prog_type":"Varied","tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x1511","prog_type":"Varied","ta":false,"tp":false}

and another one
$ rtl_fm -M fm -l 0 -A std -p 0 -s 171k -g 40 -F 9 -f 104.10e6 |./redsea
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Found Rafael Micro R820T tuner
Tuner gain set to 40.20 dB.
Tuned to 104442000 Hz.
Oversampling input by: 8x.
Oversampling output by: 1x.
Buffer size: 5.99ms
Exact sample rate is: 1368000.013046 Hz
Sampling at 1368000 S/s.
Output at 171000 Hz.
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"group":"2A","pi":"0x3D02","prog_type":"Varied","tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ps":" 104.1  ","ta":false,"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"group":"2A","pi":"0x3D02","prog_type":"Varied","tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ps":" 104.1  ","ta":false,"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ps":" 104.1  ","ta":false,"tp":false}
{"di":{"stereo":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"group":"2A","pi":"0x3D02","prog_type":"Varied","tp":false}
{"di":{"artificial_head":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"compressed":false},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ta":false,"tp":false}
{"di":{"dynamic_pty":true},"group":"0A","is_music":true,"pi":"0x3D02","prog_type":"Varied","ps":" 104.1  ","ta":false,"tp":false}
{"group":"2A","pi":"0x3D02","prog_type":"Varied","tp":false}

Is it possible to get RDS with wbfm?

Hi, I believe the wbfm demodulator removes the RDS subcarrier. This is why the fm demodulator should be used instead. The wbfm demodulator applies a deemphasis filter and may even change the sampling rates.

Is there a specific reason why you would need the wbfm demodulator? If you want FM stereo or de-emphasis, I've written a simple (yet not very user friendly) tool for that purpose: stereodemux.

On 11/13/2017 04:53 PM, Oona Räisänen wrote:

Is there a specific reason why you would need the wbfm demodulator? If
you want FM stereo or de-emphasis, I've written a simple (yet not very
user friendly) tool for that purpose: stereodemux
https://github.com/windytan/stereodemux.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/windytan/redsea/issues/53#issuecomment-344086796,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXJgtpoOKC2MkxaDLN1Ie01UJKe7xC9ks5s2Mh3gaJpZM4Qar_T.

I was trying to capture broadcast FM using softFM
(https://github.com/jorisvr/SoftFM), and feed it into icecast. If the
RDS text could be made available that would make the icecast stream more
powerful.

SoftFM decodes stereo by default. But redsea requires an undecoded mono multiplex. So you would have to pass -M or --mono to SoftFM to make it work.
I've added a mention in the wiki about this requirement, so closing this for now.


AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key'

On cloning and running on my local machine, after following each step clearly, I get the following message:

Traceback (most recent call last):
  File "c:\users\raghav khullar\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\raghav khullar\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\Raghav Khullar\AppData\Local\Programs\Python\Python37\Scripts\streamlit.exe\__main__.py", line 4, in <module>
  File "c:\users\raghav khullar\appdata\local\programs\python\python37\lib\site-packages\streamlit\__init__.py", line 75, in <module>
    from streamlit.delta_generator import DeltaGenerator as _DeltaGenerator
  File "c:\users\raghav khullar\appdata\local\programs\python\python37\lib\site-packages\streamlit\delta_generator.py", line 25, in <module>
    from streamlit.proto import Block_pb2
  File "c:\users\raghav khullar\appdata\local\programs\python\python37\lib\site-packages\streamlit\proto\Block_pb2.py", line 21, in <module>
    create_key=_descriptor._internal_create_key,
AttributeError: module 'google.protobuf.descriptor' has no attribute '_internal_create_key'

How can I resolve this?

You need to update your protobuf library. For whatever reason, the Python dependency solver doesn't seem to get this right on all systems:
pip install --upgrade protobuf
Best,
Randy