Markdown support

Nice. But now can you add MarkdownV2 support pls ? And link preview hider

Should be

You can use HTML, markdown on telegram is a bit odd because they check syntaxes

HTML makes it easier to correct syntax errors than Telegram Markdown.

Ah, HTML, thanks. But what about link previews ?

You can use (label) and will work fine
This is what looks like:

Hmm I don't know if I can solve this, I will do some tests.

I think you need to set link_preview_options
https://core.telegram.org/bots/api#sendmessage

Thank you, I will do some refactoring and will make this change

Sorry for delay making version 1.2.2 now


Create Readme.md

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from the review on Reviewable.io


java.util.Collections.{empty*|singleton*} fail immutability tests on JVM.

This also affects issue also involves nCopies.

Some operations fail with a ClassCastException instead of UnsupportedOperationException.

when I have a little time I will help on these topics
but it will be good to me to have a link to a branch with a repro for each

They come from progressively porting tests to JUnit+Shared. So you'd better wait until those ports are over and merged. Then the failing tests will be (deactivated) in master.

I'm additionally marking in the port commits the number of the issues that caused the insertion of an
if (!executingOnJVM).


Tailwind support in emails

It would be great if we could use Tailwind to style emails so we can use consistent tooling across web and email.
Maizzle is a framework that support this but it's not react based.
Some way to take the CSS classes from Tailwind and inline those as styles would be required for this.

If you're not aware, there is a package called mailwind: https://github.com/soheilpro/mailwind
It compiles Tailwind to CSS to design HTML emails.
You may be able to draw inspiration or see how they're addressing tailwind to CSS  in emails.
It works, but there is a bit of rigamarole to it.
It would be nice if react-email could do a similar process in the render function.

This is what react email is missing! Please add this feature.

Bump!

@vinicoder any updates on this?

Yeah @zenorocha! I created this PR recently with this feature. Check it out: https://github.com/resendlabs/react-email/pull/382

Awesome, thank you @vinicoder !


The work-flow for creating testing grounds should become more intuitive

There is very little 'persistence' when going from ETM to the 'scaling interface' and, subsequently to the testing ground environment.
The user should be 'guided' through the steps more and get a better idea about the work-flow of creating, analysing en merging testing grounds.

Earlier comments by @dennisschoenmakers:
To consider:

[ ] What if this is an already scaled scenario?
[ ] Can we do this for all Areas?
[ ] The flow is not logical now: you still have to save the scenario first. Could we add an option to the select list of the *Current scenario?

Save and go to testing ground env 'button' as replacement for 'creating testing ground' menu link.
Set scenario name: "Nationale scenario +  + "
List scenarios from user
Single sign in

Single sign in accross multiple application with CAS? (or if anyone has another technological idea, please do tell - https://github.com/rubycas/rubycas-client / https://github.com/rubycas/rubycas-server). This is quite a 'huge' step though.

How huge exactly? How much time would it take to implement it across etmodel, etengine and etloader?

It would take the following things:

A CAS server to function as an authenticator. At this server the user would sign in (i.e. the sign-in POST call doesn't go to 'sign_in_path' but to the CAS server).
All the applications (etmodel, etengine, etloader) have to be registered as CAS-clients.

Unknowns:

I have to investigate in how well - I'd guess the current devise-authentication - will integrate with CAS.  There might be a case where it doesn't and devise needs to be replaced (this would take up a lot of time ) (https://github.com/nbudin/devise_cas_authenticatable just found this though, might make things easier).

I'm thinking - and this is a rough 'wet-finger-pointing-in-the-sky'-type of estimate - it would take 2 to 3 weeks in order to get this working properly.

it would take 2 to 3 weeks in order to get this working properly.

As discussed with @grdw and @dennisschoenmakers, the most important thing right now is to communicate the scenario ID from ETModel to ETLoader. We will look into fancier approaches later.

Save and go to testing ground environment-'link' as replacement for 'creating testing ground' menu link.
Set scenario name: "Nationale scenario + [scaled to size] + [numbering]"

These two are fixed

List scenarios from user

This depends on #57

The only thing that's missing is the parent 'url'. There are multiple ways to save the parent id in etloader.
The simplest one - is doing an API call to etengine and asking for the current scenario.
Another way is passing the parent id from et-engine, in et-modal to et-loader (which sounds as complicated as it is).

The simplest one - is doing an API call to etengine and asking for the current scenario.

Let's do that one then! :smile:

With 'current' you mean 'latest', right? Might this not lead to
confusion when a scenario has just been created by another user or
application?

I don't mean latest, I mean the parent scenario from the scenario_id that's stored with a testing_ground.

:+1:

Fixed the parent scenario id issue with 97a3fda
Also added separators between the 'national scenario' and 'scaled scenario' links, as discussed with @ChaelKruip
Also setted a max-height for the topology; which is now 500px. https://github.com/quintel/etloader/blob/cc3e3861fc2eb2a0b5b49fdf913ed4061e596295/app/assets/javascripts/showTree.js#L34

Closing this lengthy ticket. See https://github.com/quintel/etloader/issues/79 for the jest.


Update location.yaml to include MaxLocationAge

Allow consumer to request the maximum accepted age of the verified location from the operator.
  schemas:
    VerifyLocationRequest:
      type: object
      properties:
        ueId:
          $ref: '#/components/schemas/UeId'
        uePort:
          $ref: '#/components/schemas/Port'
        latitude:
          $ref: '#/components/schemas/Latitude'
        longitude:
          $ref: '#/components/schemas/Longitude'
        accuracy:
          $ref: '#/components/schemas/Accuracy'
        maxLocationAge:
          $ref: '#/components/schemas/MaxAge'
      required:
        - ueId
        - latitude
        - longitude
        - accuracy
        - maxAge

MaxAge:
      description: Max location aging validity required by the application in Minute, Default =0 for realtime location
      type: number
      minimum: 0
      maximum: 1440
      example: 30

Hi @ukkaps
Some comments

if it is required then describing a default value makes no sense. We have to decide which one is best approach. To me, the options are:
a) Make it optional and defining a default which is NOT real-time, e.g. 5 to 10 minutes, so implementations may rely by default on some passive data. If client explicitly requires real-time location, maxAge=0, then it must be added to the request.
b) Making it required, without default indication. In this case, I wonder in which use cases clients would ask for a value other than 0, which is the most accurate.

As part of this new feature, we have to model also the expected server behaviour and the responses: Some questions:

If requested maxAge cannot be satisfied, should implementation return 200 + verificationResult with some adhoc value, or an error?
Should we include some indication of locationAge in the response in any case?

@ukkaps This issue duplicates #34, we can consolidate all discussions there. I'm closing this one as duplicate.

Duplicate


Update Composer dependencies (2022-02-06-00-04)

Visual regression test passed!
View the visual regression test report


Throttle sending of MIDI CC

While working on the sync issues, I noticed we're spamming CC's when moving sliders, which in turn prevents midi clocks from going out correctly.
This small fix throttles it enough to prevent overload on the sender, but perhaps we want to introduce a new time window specifically for outgoing MIDI.

Yes, this should work nicely as long as we're meeting our other timings. Let's merge this and see how it holds up in testing.


Add ipython notebook examples

We should add an examples directory with iPython notebooks.
I'm currently using a version of iPython with notebook format 4, so released versions of python can't load them. I'll probably put together a few, but perhaps we shouldn't include them until ipython 3.0.0 is released.

Just to update: there are a few notebooks in examples/. I'm currently attempting to get binder to be able to load them, so people can try dit on the fly.


Ad into the end of recycleview

Now it's possible to insert ad into list between elements, but there is no way to put it at the end of list, such as:
[item one]
[item two]
[awesome native ad]

@aa-contorra Hi,
Okay we'll take a look, thanks for your report...

Please add this feature. I have a RecyclerView with first ad index set to 2. However, if there are 2 or less items, the ad isn't shown. If for example there is just one item, I want the ad to show as the second item, even if the ad index is higher than that position.


A twitter-wjs node is already present

Loading a page with the twitter-feed already embedded loads but gives the following errors in the console:
A twitter-wjs node is already present - twitter-feed.js:31
Uncaught error: Assertion Failed: A twitter-wsj node was inserted. ember.debug.js:5191

What Ember version were you using?

I'm using v2.0.2. I have a sidebar component that renders a twitter-feed component which is literally:
{{#twitter-feed}}
    Tweets by @JHLiberty
   <twitters script here>
{{/twitter-feed}}

Just loading a page with this component loaded on it causes the error.

Ok, its probably an Ember 2 problem. Just remember that you dont need to add the JS line.

I took out the JS line and this seems to have fixed this issue - awesome!


Forum link

The forum link redirects to a 404.

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

ID: 37b2e4b1-0c75-f9c2-fd1a-134f09fef731
Version Independent ID: 0d5517f9-d1d2-b129-1121-5ab64d65bf3b
Content: What is group-based licensing in Azure Active Directory?
Content Source: articles/active-directory/active-directory-licensing-whatis-azure-portal.md
Service: active-directory
Product: unspecified
GitHub Login: @curtand
Microsoft Alias: curtand

@jwmoss Thanks for the feedback !  I have assigned this issue to content author to investigate and update the document as appropriate.

Hi @jwmoss, The old forum for group-based licensing is no longer there. I rerouted to the admin portal forum on the same site, feedback.azure.com. It will be published tomorrow morning at 10 AM.

Great thanks!

#please-close

@jwmoss
We had a publishing glitch yesterday. Nothing from the day was published until 10PM. The fix is live now. Thanks for your patience.

Thanks!


feat: hero page image src supports light and dark

Summary
hero page image src supports light and dark
Related Issue

Checklist

[ ] Tests updated (or not required).
[x] Documentation updated (or not required).

LGTM


The plugin breaks WP CLI

Hello there,
I have had an issue with this plugin for a long time. When the plugin is enabled, WP CLI is entirely broken.
The error:
Fatal error: During class fetch: Uncaught ParseError: syntax error, unexpected '|', expecting variable (T_VARIABLE) in /srv/www/hezarfen/public_html/wp-content/plugins/spatie-ray/vendor/spatie/macroable/src/Macroable.php:14
Stack trace:
#0 [internal function]: Automattic\Jetpack\Autoloader\jp3123785b021cae6cb6ff0533904b8273\al2_12_0\PHP_Autoloader::load_class()
#1 /srv/www/hezarfen/public_html/wp-content/plugins/spatie-ray/vendor/spatie/ray/src/Ray.php(60): spl_autoload_call()
#2 /srv/www/hezarfen/public_html/wp-content/plugins/hezarfen-pro-for-woocommerce/vendor/jetpack-autoloader/class-php-autoloader.php(90): require('/srv/www/hezarf...')
#3 [internal function]: Automattic\Jetpack\Autoloader\jp3123785b021cae6cb6ff0533904b8273\al2_12_0\PHP_Autoloader::load_class()
#4 /srv/www/hezarfen/public_html/wp-content/plugins/spatie-ray/src/Ray.php(12): spl_autoload_call()
#5 /srv/www/hezarfen/public_html/wp-content/plugins/hezarfen-pro-for-woocommerce/vendor/jetpack-autoloader/class-php-autoloader.php(90): require('/srv/www/hezarf in /srv/www/hezarfen/public_html/wp-content/plugins/spatie-ray/vendor/spatie/ray/src/Ray.php on line 60

Reproducing steps:

Install a fresh WP
Install&Activate the WordPress Ray plugin
See WP CLI doesn't work and you get the fatal error.

Version:1.7.5

Sorry, never mind, the issue seems to be coming from my stack. I couldn't reproduce the issue with a fresh instance.


time parameter type fixed

-1 should result in displaying text 'forever', in same way as in native text printing opcodes.

{00BC:} print_now {key} '10LS' {time} -1 {flag} 1
text does not even show up

 if ( v2->m_aMessages[0].m_pText
      && CTimer::m_snTimeInMilliseconds > (v2->m_aMessages[0].m_dwStartTime + v2->m_aMessages[0].m_dwTime) )
    {
      v2->m_aMessages[0].m_pText = 0;

if m_dwTime is 0 or less, the text is immediately removed. not sure where this idea of unlimited time came from

Right. I tested original opcodes and none of them works that way. I think I mixed them with character tasks, which accept -1 as time argument.


fix(jira): use SearchPages for paginated results (#201)

Fixes #201
Simplified logic, removed code duplication. Using SearchPages instead of Search.
Tested on the openclarity/vmclarity repo, which has more than 100 issues.

@justaugustus , it's crucial to have this merged, kindly asking your review.
The JIRA query right now only gets max 100 items from Jira. In case you have more than that, this tool will start creating duplicate issues.


Merge rel/2.0.1 to dev

We always merge back rel branches to dev. This has been out of sync and now there are multiple conflicts.
If you are assigned to this PR, then please push a commit to resolve conflicts with dev. So that this branch can be merged to dev & dev becomes consistent with rel/2.0.1

Thanks @AndriySvyryd for strategies.


allocator: import QuickFit allocator from Hypatia

This imports the QuickFit allocator from Hypatia, setting us up to have a rudimentary kernel heap.

good to advance the Rust toolchain as well, yea 👍


MenuItems disappear when using FSV in a fragment

FSV is the centerpiece of my application, mostly due to the way it handles icons beautifully. However, once I moved FSV into a fragment, instead of an activity, the icons stopped showing up as in the demo, and started showing up like regular android menus.
This is what it looks like with the menu from the sample:

Here's the widget as defined in my Fragment's XML:
    <com.mypopsy.widget.FloatingSearchView
        android:id="@+id/uiSearch"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginLeft="35dp"
        android:layout_marginRight="35dp"
        android:layout_marginTop="150dp"
        android:background="#90000000"
        android:hint="@string/search"
        android:translationZ="12dp"
        app:fsv_contentBackgroundColor="@color/white"
        app:fsv_cornerRadius="5dp"
        app:fsv_menu="@menu/search"
        tools:context=".MainActivity"/>

The menu items work when clicked on. The MenuProgressBar class doesn't show at all.
This may be a theming issue or unrelated to fragments. I'm not exactly sure.
I don't think it's relevant info, but I'm using Kotlin and Android Studio 3.

After some time, I figured out FSV is just not compatible with all activities. It IS compatible with AppCompatActivity, but not with FragmentActivity.
Issue can be closed.


dts: r8a779f: add bus clock dev to mmc node

Add bus clock device to MMC node.

Acked-by: Volodymyr Babchuk<EMAIL_ADDRESS>

added ack

tested changes --- everything ok

Please extend commit message description With comment fixed: Acked-by: Dmytro Firsov<EMAIL_ADDRESS>
done


chore: add change log for v1.6.0

Type of change:

[ ] Bugfix
[ ] New feature provided
[ ] Improve performance
[ ] Backport patches

What this PR does / why we need it:

Pre-submission checklist:

[ ] Did you explain what problem does this PR solve? Or what new features have been added?
[ ] Have you added corresponding test cases?
[ ] Have you modified the corresponding document?
[ ] Is this PR backward compatible? If it is not backward compatible, please discuss on the mailing list first

Codecov Report

:exclamation: No coverage uploaded for pull request base (v1.6.0@88b1d45). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             v1.6.0    #1561   +/-   ##
=========================================
  Coverage          ?   41.45%
=========================================
  Files             ?       87
  Lines             ?     7418
  Branches          ?        0
=========================================
  Hits              ?     3075
  Misses            ?     3989
  Partials          ?      354

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Design feedback

A few tweaks suggested by our designers:

[x] For links from Mastodon, they sometimes run off the screen.  Let's chop them and add an ellipsis
[ ] In the overlay, lets add more padding around the outside
[ ] In the overlay, let's try a larger font size

The latter 2 items feel like they should be included in the themes feature to allow customizing the overlay layout.

I've bumped up the scale of the modal and it looks better.  I'm going to open a larger issue for Theming


Licensing Model

Hi
Is there any licensing model or can this be used in any projects for enterprise software gits?
Regards
Clarissa

I'd add that is also would be nice to know about a licensing model for an open-source projects?

@philschatz It seems like you're no longer actively working on this project. Without a license defined, technically no one can fork it. Would you mind adding something like the MIT or GPL license?

It now has the MIT license. This project does accept Pull Requests and I am open to adding other maintainers to help improve it 😄

@philschatz it sounds like we can close this issue.
BTW I volunteer as a maintainer - I'm new to this sort of project but I can help evaluate problems/solutions, and eventually level up to active contribution.


Error when calling image_generator_real from Image_generation_examples notebook

Issue Brief
This issue concerns Image_generation_examples.ipynb, for the code under the header Generate image of isolated galaxies.
Running the cell that calls image_generator_real leads to an error in images_generator.py at:
psf_image = PSF[6].drawImage(nx=max_stamp_size, ny=max_stamp_size, scale=pixel_scale[6])

which is:
AttributeError: 'tuple' object has no attribute 'drawImage'

Attempted Debugging
I have tried debugging by printing PSF:

and by printing the type of each element in PSF:

where indeed we see that PSF[6] is a tuple.
Attempted Resolution
I naively tried to resolve this by extracting the first element of every tuple by inserting the following line in images_generator.py before PSF[6].drawImage:
PSF = list(map(lambda x: x[0] if type(x) == tuple else x, PSF))

but it results in a different error:
TypeError: not all arguments converted during string formatting

at this part of images_generator.py:
# Draw real images
--> galaxies_real_psf = [galsim.Convolve([real_gal*coeff_exp[6], PSF_lsst]) for real_gal in real_gal_list]

Additional Details
I am running the notebook from a Conda environment running in WSL.
PS: running the cells of the notebook that call image_generator_sim work fine.

I @sidwan02. Thanks for the issue. I found the bug, it was a problem with the call of the function psf_lsst at the start of the image_generator_real function. Commit cbe5e47 corrected for it. It should work fine now so I close the issue. Tell me if otherwise so I will reopen it


bug: cas-type has no impact when jiva volumes are running.

$ kubectl openebs get volumes --cas-type hello
---

NAMESPACE   NAME                                       STATUS   VERSION   CAPACITY   STORAGE CLASS         ATTACHED   ACCESS MODE     ATTACHED NODE
openebs     pvc-7f194739-16c8-4920-bb79-a28d63183b3e   RW       2.12.2    4Gi        openebs-jiva-csi-sc   Bound      ReadWriteOnce

The command shows desired output when wrong namespace is given
$ kubectl openebs get volumes --cas-type hello --openebs-namespace wrongvalue
---
No output, which is desired at least up to this point of time

Thank you @Abhishek-kumar09 for pointing this out, would love to have such feedback. It would be great if you can include the wrong namespace case in your open PR, #103.

Thanks @Abhinandan-Purkait . I have wrote code to handle case for wrong namespace in the latest PR .


Added support for config files

Update:
As per comments, I updated the format to YAML. The corresponding updated example for the config file is now:
source: /Users/dvilar/corpora/iwslt/tokenize/de-en/train.tags.de-en.de
target: /Users/dvilar/corpora/iwslt/tokenize/de-en/train.tags.de-en.en
validation_source: /Users/dvilar/corpora/iwslt/tokenize/de-en/IWSLT16.TED.dev2010.de-en.de.txt
validation_target: /Users/dvilar/corpora/iwslt/tokenize/de-en/IWSLT16.TED.dev2010.de-en.en.txt
output: out
use_cpu: true

Fun fact: the original json config file is also correctly parse as yaml :-)
Original description:
Specify a config file with --config. Command line parameters have precedence over the values read from the config file, as expected.
The config file is a json serialization of the namespace returned by argparse, casted to a dictionary. The file args.json produced by the training can be used as config file.
The config file does not need to be complete. Missing parameters will be read from the command line or will take default values.
Minimal working example (python -m sockeye.train --config config.json starts a training, cpu activated):
{
  "source": "/Users/dvilar/corpora/iwslt/tokenize/de-en/train.tags.de-en.de",
  "target": "/Users/dvilar/corpora/iwslt/tokenize/de-en/train.tags.de-en.en",
  "validation_source": "/Users/dvilar/corpora/iwslt/tokenize/de-en/IWSLT16.TED.dev2010.de-en.de.txt",
  "validation_target": "/Users/dvilar/corpora/iwslt/tokenize/de-en/IWSLT16.TED.dev2010.de-en.en.txt",
  "output": "out",
  "use_cpu": true
}

Additionally the functionality introduced in 5a3bf5f8 has been reimplemented, accessing the argument_definitions member of ConfigArgumentParser.
Note about the PR
This PR includes two commits. The first one mainly reverts arguments.py to pre-5a3bf5f8. The second one is the actual "meat" of this PR. Looking at the commits separately probably will provide a better overview.
Pull Request Checklist

[x] Changes are complete (if posting work-in-progress code, prefix your pull request title with '[WIP]'
until you can check this box.
[x] Unit tests pass (pytest)
[x] System tests pass (pytest test/system)
[x] Passed code style checking (./style-check.sh)
[x] You have considered writing a test
[x] Updated major/minor version in sockeye/__init__.py. Major version bump if this is a backwards incompatible change.
[x] Updated CHANGELOG.md

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

This deserves a new minor version and a changelog entry as it is potentially interesting to many users.

@yx3zhang: FYI

Just a quick comment, this might be solving the 10% on top of the 90% this PR already covers. It would be more user friendly to support .yaml so documentation of each parameter can be provided in line.

Good point, we already depend on pyyaml, so switching from JSON to YAML shouldn't be difficult. We have been dumping the arguments to <model>/args.json only for logging purposes for a while, but I don't think users rely on it at this point.
So switching to YAML with a minor version bump should be fine.

@davvil #403 is a PR on top of yours to change to YAML

@fhieber hadn't seen your commit, I implemented it myself independently.
As you pointed out, I originally chose json because it was the format we were dumping the args originally. I also found yaml more convenient.

Sure, go ahead!


[HOLD for payment 2023-06-12] [Group 2][Accessible Pressable] Migrate CalendarPicker

HOLD on https://github.com/Expensify/App/issues/16988
Description
Migrate CalendarPicker to use PressableWithFeedback and PressableWithoutFeedback

Triggered auto assignment to @johncschuster (NewFeature), see https://stackoverflowteams.com/c/expensify/questions/14418#:~:text=BugZero process steps for feature requests for more details.

No payments due here


[BUG] BIOS based VMs imported from VMWare and OpenStack has no IP address

Describe the bug
During verify harvester/harvester/issues/5758, we found BIOS based VMs imported from VMWare or OpenStack will has no IP address.
(EFI based VMs works fine)

Note that if manually check Install guest agent and restart, IP address will shown.

Manual Install guest agent and restart VM

And IP will shown

Prerequisite

Having VMWare endpoint

 Create VM network mgmt-vlan1

 Enable vm-import-controller addon

Deploy Successful

Config

To Reproduce
For example, import from VMWare

 :green_circle: Given a running BIOS based VM dl-ubuntu-bios

BIOS based

Running

 :green_circle: When import VM by creating VirtualMachineImport

# cat vmware-VirtualMachineImport.yaml
apiVersion: migration.harvesterhci.io/v1beta1
kind: VirtualMachineImport
metadata:
  name: vmware-bios
  namespace: default
spec:
  virtualMachineName: "dl-ubuntu-bios"
  networkMapping:
  - sourceNetwork: "VM Network"
    destinationNetwork: "default/mgmt-vlan1"
  sourceCluster:
    name: vcsim
    namespace: default
    kind: VmwareSource
    apiVersion: migration.harvesterhci.io/v1beta1

# kubectl apply -f vmware-VirtualMachineImport.yaml
virtualmachineimport.migration.harvesterhci.io/vmware-bios created
#

 :yellow_circle: Then VM should be import and boot correctly

:warning: Running but IP does NOT shown

 :green_circle: And in Advanced Options page, Booting in EFI mode is not checked

Expected behavior
Should have IP address once successfully imported.
Support bundle
supportbundle_ImportedVmsHasNoIp_2024-09-25T10-00-44Z.zip
Environment

Harvester

Version: v1.4.0-dev-20240918
Profile: Single node QEMU/KVM (48C/128G/1.6T)
ui-source: Auto

Additional context
n/a
Reference

https://docs.harvesterhci.io/v1.3/advanced/addons/vmimport#sources
https://docs.harvesterhci.io/v1.3/advanced/addons/vmimport#virtualmachineimport
https://harvester.github.io/tests/manual/advanced/addons/5846-vm-import-enhancement/

@votdev Please help check this issue, thanks!

Perhaps also somewhat related to:
https://github.com/harvester/harvester/issues/6451

I think the issue is related to https://github.com/harvester/harvester/issues/6406

I can confirm that after the import no IP is displayed:
status:
  interfaces:
  - infoSource: domain, multus-status
    mac: 00:50:56:96:65:62
    name: migrated-0
    queueCount: 1

But it seems the compute container of the VM pod has an IP address:
qemu@dl-ubuntu-bios:/> ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0@if20: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc noqueue state UP group default qlen 1000
    link/ether 0a:3d:d3:b8:8d:71 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet <IP_ADDRESS>/32 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::83d:d3ff:feb8:8d71/64 scope link
       valid_lft forever preferred_lft forever

Some more information.
UEFI
qemu@dl-opensue-uefi:/> virsh qemu-agent-command 1 '{"execute":"guest-network-get-interfaces"}'
{
    "return":[
       {
          "name":"lo",
          "ip-addresses":[
             {
                "ip-address-type":"ipv4",
                "ip-address":"<IP_ADDRESS>",
                "prefix":8
             },
             {
                "ip-address-type":"ipv6",
                "ip-address":"::1",
                "prefix":128
             }
          ],
          "statistics":{
             "tx-packets":14,
             "tx-errs":0,
             "rx-bytes":2072,
             "rx-dropped":0,
             "rx-packets":14,
             "rx-errs":0,
             "tx-bytes":2072,
             "tx-dropped":0
          },
          "hardware-address":"00:00:00:00:00:00"
       },
       {
          "name":"eth0",
          "ip-addresses":[
             {
                "ip-address-type":"ipv4",
                "ip-address":"<IP_ADDRESS>",
                "prefix":24
             },
             {
                "ip-address-type":"ipv6",
                "ip-address":"fe80::250:56ff:fe96:4694",
                "prefix":64
             }
          ],
          "statistics":{
             "tx-packets":51,
             "tx-errs":0,
             "rx-bytes":162100,
             "rx-dropped":1652,
             "rx-packets":2830,
             "rx-errs":0,
             "tx-bytes":6547,
             "tx-dropped":0
          },
          "hardware-address":"00:50:56:96:46:94"
       }
    ]
}

BIOS
qemu@dl-ubuntu-bios:/> virsh qemu-agent-command 1 '{"execute":"guest-network-get-interfaces"}'
error: Guest agent is not responding: QEMU guest agent is not connected

Based on the status.conditions and status.guestOSInfo there is no qemu-guest-agent in the Ubuntu VM, thus no IP address can be reported.
UEFI
status:
  conditions:
  - lastProbeTime: "2024-10-14T07:49:20Z"
    lastTransitionTime: null
    status: "True"
    type: AgentConnected
...
  guestOSInfo:
    id: opensuse-leap
    kernelRelease: 5.14.21-150500.55.65-default
    kernelVersion: '#1 SMP PREEMPT_DYNAMIC Thu May 23 04:57:11 UTC 2024 (a46829d)'
    machine: x86_64
    name: openSUSE Leap
    prettyName: openSUSE Leap 15.5
    version: "15.5"
    versionId: "15.5"
  interfaces:
  - infoSource: domain, guest-agent, multus-status
...

BIOS
The Ubuntu machine is missing that condition entry. The status.guestOSInfo is empty and finally status.interfaces.infoSource does not contain guest-agent which indicates that the interface information contain data from the guest agent.
status:
  guestOSInfo: {}
  interfaces:
  - infoSource: domain, multus-status

Unfortunately, the other VMs listed in the issue description no longer exist to validate these as well.
For this reason I think we can close the issue because of expected behavior.

@votdev, good analysis.
Do we have workaround like

Add qemu-guest-agent in VM cloud-init and restart
Manually install qemu-guest-agent.
...?

Perhaps we can document workaound in VM import section.
cc. @bk201

@votdev, good analysis.
Do we have workaround like
1. Add _qemu-guest-agent_ in VM cloud-init and restart

2. Manually install _qemu-guest-agent_.

3. ...?

Perhaps we can document workaound in VM import section.
cc. @bk201

cloud-init can be run only once, but it is possible to clean up artifacts so that it is possible to re-run it.
IMO the easiest would be to describe in the docs how to clean up cloud-init to re-run it to install qemu-guest-agent.


Traffic segmentation research

Notebook with examples of traffic lights being segmented out from the image

@erik-rosen, I will try to rebase this to your master, because it was started of my branch and there is a lot of noise here


Proper way to change favicon

Is your feature request related to a problem? Please describe.
For now if we want to change favicon we should inject <link rel="icon" ...  to index.html.
Although this is work in some cases (for example it works for me in Google Chrome icon tab) but it's didn't work in another case (for example Slack preview card).
I'm using my own slide here https://wasm-intro.iwgx.io
And this is the repo https://github.com/iwgx/wasm-intro
It showed correctly in Chrome tab

Showed differently in Slack

From what I got: although we think we already "override" the tag, it will be interpreted differently by different services so the icon that showed will be different and of course we don't want that.
I think it's also not a best practice to doing something like "override".
Describe the solution you'd like
Adding another property that slides.md can accept, something like
icon: /images/favicon.png

Describe alternatives you've considered
I'm not sure about this. But how about not having a default favicon for the first place?
Thank you for your work in Slidev.

Sounds like a good proposal. I am open for PR. Thanks!

I create a PR to support this feature https://github.com/slidevjs/slidev/pull/421
And there is an issue that I am not sure whether it is necessary to add favicon type.
<link rel="icon" type="image/png" href="https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png">

Or just
<link rel="icon" href="https://cdn.jsdelivr.net/gh/slidevjs/slidev/assets/favicon.png">

Thanks for the PR, I already try it and looks amazing now 😀


Fix 'time of inject' footgun regarding AppPaths

Signed-off-by: Sebastian Malton<EMAIL_ADDRESS>Current there is a footgun regarding the injectables around AppPaths (including the derivative ones eg directoryForUserDataInjectable). That being that merely calling di.inject() can lead to an error being thrown.
To resolve this I have introduced a new injectable construct called LazyInitializableState which needs an init: (di) => T function and then initialises itself the first time that get(): T is called. This is an "invasive" fix, because all the injetables that depend on these need to change there uses, but it better encapsulates the usage contract and resolves this footgun.

This needs to be rebased again once #6338 has been merged

Let's discuss this footgun a little bit:

...merely calling di.inject() can lead to an error being thrown.

I'm considering the possibility of this error actually being a good thing instead of footgun. We are talking about throwing when attempting to inject something that is not guaranteed ready for consumption. The expected responsibility of dependency injection is to inject dependencies that are ready for consumption. It could be more wrong to load the dependee with an additional responsibility of surviving the case of a dependency that is not ready for consumption? That's a breach of Single Responsibility Principle, which often communicates a more severe design problem elsewhere.

Note: in general, a di.inject() may indeed throw if there is a good reason to do so. This throwing is not to be considered inherently evil.

I'd like to understand the footgun better.

What is the damage of it?
What is the sequence of actions leading to it?

Argument: deferring logic of initialization from injection-time to run-time (there's a difference) creates logical/temporal dependencies and thus exposes us to a difficult subset of bugs.

deferring logic of initialization from injection-time to run-time (there's a difference) creates logical/temporal dependencies and thus exposes us to a difficult subset of bugs.

You need to give an example or this argument is not very persuasive.
Saying that the deferring creates the "logical/temporal dependencies" is false. They already exist, this change just makes them front and centre.

Closing after discussion


Expo managed workflow support

Hello is there some workaround (except calling REST API directly) for using this with non ejected expo app ?

seems like there is no update on this. At the moment I segment supports mixpanel and I think you can install it that way but the huge downside is that segment only tracks 1k monthly users vs the 10k that mixpanel does

You can use this library with the Expo managed workflow without ejecting with EAS Build. It will only work on standalone builds though and not on Expo Go. But it's perfectly usable.

You can use this library with the Expo managed workflow without ejecting with EAS Build. It will only work on standalone builds though and not on Expo Go. But it's perfectly usable.

@gmerino92 could you share how you set it up? I installed 'mixpanel-react-native', imported it in my App.tsx and tried to initialize with:
const mixpanel = new Mixpanel('90633d4c7581ac7bbbd83fa84f5266d0')
mixpanel.init()

But I get these errors when attempting to run my app on ExpoGo. Did you conditionally import Mixpanel based on if it's a production build?
Error: mixpanel-react-native: MixpanelReactNative is null.
Invariant Violation: "main" has not been registered. This can happen if:
* Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
* A module failed to load due to an error and `AppRegistry.registerComponent` wasn't called.

For those of you who just want a copy/paste solution. This approach:

tries to keep typing working by importing just the types from the Mixpanel library directly
allows you to do debug logging of the mixpanel calls while in Expo Go mode
won't silently fail if something bad actually does happen when initializing the library in production

Any improvements welcome!
import Constants, { ExecutionEnvironment } from 'expo-constants';
import type { Mixpanel } from 'mixpanel-react-native';

const isExpoGo =
  Constants.executionEnvironment === ExecutionEnvironment.StoreClient;

let mixpanel: Mixpanel; /* eslint-disable-line import/no-mutable-exports */

// cache the mixpanel instance so we don't have to re-initialize it
if (!mixpanel) {

  // Check if we're in Expo Go. We could alternatively use a try/catch block,
  // but that could mask other errors. For example, if we're in a production build
  // and something goes wrong during initialization, it will silently fail and
  // we'll just stop getting Mixpanel events. No good.
  if (isExpoGo) {
    mixpanel = createLoggingProxy();
  } else {
    const trackAutomaticEvents = true;
    const { Mixpanel } = require('mixpanel-react-native');
    mixpanel = new Mixpanel('MY_MIXPANEL_TOKEN', trackAutomaticEvents);
    mixpanel.init();
  }
}

// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy
function createLoggingProxy() {
  return new Proxy(
    {},
    {
      get(target, prop) {
        if (target[prop] === undefined)
          return function (...args) {
            console.debug(`${String(prop)} called with:`, args);
          };
        return target[prop];
      },
    },
  );
}

export default mixpanel;

You can use this library with the Expo managed workflow without ejecting with EAS Build. It will only work on standalone builds though and not on Expo Go. But it's perfectly usable.

@gmerino92 could you share how you set it up? I installed 'mixpanel-react-native', imported it in my App.tsx and tried to initialize with:
const mixpanel = new Mixpanel([tokenString])
mixpanel.init()

But I get these errors when attempting to run my app on Expo Go. Did you conditionally import Mixpanel based on if it's a production build?
Error: mixpanel-react-native: MixpanelReactNative is null.
Invariant Violation: "main" has not been registered. This can happen if:
* Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
* A module failed to load due to an error and `AppRegistry.registerComponent` wasn't called.

Hi, Vanessa. Sorry I missed this. Indeed, like you said in your next response, we have a conditional import for the library so as to avoid errors while in development. We don't use Expo Go anymore though, only develop using dev clients built with EAS Build. This is an excerpt of what we do:
const MixpanelWrapper: any = require('mixpanel-react-native');

    if (MixpanelWrapper) mixpanel = new MixpanelWrapper.Mixpanel(token);
    if (mixpanel) {
        mixpanel.init();
        mixpanel.setLoggingEnabled(true);
    }

@gmerino92 is there any way to use with dev clients built locally via the npx expo run:ios command?

@gmerino92 is there any way to use with dev clients built locally via the npx expo run:ios command?

Yes this is possible. As far as I know they are the same thing. Build from cloud or locally.

Hi I managed to get mixpanel working using eas build. But when I try to run on web it throws erro mixpanel-react-native: MixpanelReactNative is null. Is there any workarround?

You will have to install the mix panel web library to use it on web.

Hi @anirudhsama  Do you have any reference on how to do this ? It should work for both native as well as web

Not specifically for mixpanel but here is an example of using react-native-firebase on native and firebase on web. https://github.com/nandorojo/nextjs-conf-22-example/tree/setup/packages/app/features/auth/firebase

@anirudhsama It dosent work in this case. as we are creating new Mixpanel object it always evaluate it first in spite  of being in If condition

Does this package work anymore? [(https://github.com/benawad/expo-mixpanel-analytics)]
Trying to use it for my first time, and it either doesn't work or my code is wrong (likely).

It works. I'm using it in my app.

@anirudhsama would you be willing to help me with setting it up? I can't find any resources online...

If you are using Expo Go, it will have an issue, but it will work in production. To mitigate that issue, I used this snippet:
import Constants, { ExecutionEnvironment } from "expo-constants";
import type { Mixpanel } from "mixpanel-react-native";

import { Env } from "app/env";

const isExpoGo =
	Constants.executionEnvironment === ExecutionEnvironment.StoreClient;

let mixpanel: Mixpanel;

// Check if we're in Expo Go or in an expo-dev-client. We could alternatively use a try/catch block,
// but that could mask other errors. For example, if we're in a production build
// and something goes wrong during initialization, it will silently fail and
// we'll just stop getting Mixpanel events. No good.
if (isExpoGo) {
	mixpanel = createLoggingProxy();
} else {
	const { Mixpanel } = require("mixpanel-react-native");
	const trackAutomaticEvents = true;
	mixpanel = new Mixpanel(Env.MIXPANEL_PROJECT_TOKEN, trackAutomaticEvents);
	mixpanel.init();
}

// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy
function createLoggingProxy() {
	return new Proxy(
		{},
		{
			get(target: any, prop) {
				if (target[prop] === undefined)
					return function (...args: any) {
						alert("Mixpanel debug");
						console.debug(`MIXPANEL: ${String(prop)} called with:`, args);
					};
				return target[prop];
			},
		}
	);
}

export default mixpanel;

Import this file in App.tsx so that it is initialised.

@anirudhsama What do you use for testing the app? (not unit tests, just checking if the data goes to Mixpanel)

I use a proxy to see if the API calls are being made to Mixpanel. Apart from that I also just look at the mixpanel events dashboard after a while to see if the events have come through.

I use a proxy to see if the API calls are being made to Mixpanel. Apart from that I also just look at the mixpanel events dashboard after a while to see if the events have come through.

And you do this through an EAS Build? Or if you test on Expo with the condition would it still trigger an event?

Yes, I create a build on EAS, install on device and do the checks.

You can use this library with the Expo managed workflow without ejecting with EAS Build. It will only work on standalone builds though and not on Expo Go. But it's perfectly usable.

@gmerino92 could you share how you set it up? I installed 'mixpanel-react-native', imported it in my App.tsx and tried to initialize with:
const mixpanel = new Mixpanel([tokenString])
mixpanel.init()

But I get these errors when attempting to run my app on Expo Go. Did you conditionally import Mixpanel based on if it's a production build?
Error: mixpanel-react-native: MixpanelReactNative is null.
Invariant Violation: "main" has not been registered. This can happen if:
* Metro (the local dev server) is run from the wrong folder. Check if Metro is running, stop it and restart it in the current project.
* A module failed to load due to an error and `AppRegistry.registerComponent` wasn't called.

You can start your metro in long Folder, you can stop your all metros to your project and open the project it will be worked

I'm using a combo of what @steviec and @anirudhsama included, where I'm both caching the mixpanel object and I'm getting the mixpanel token from an env file.

Hello, thank you all for your patience. We have just released a beta version, v3.0.0-beta.1. This version allows you to enable JavaScript mode when initializing Mixpanel, which should work with the Expo managed workflow. For more details and installation guidelines, please refer to the release notes at Mixpanel React Native v3.0.0-beta.1. We welcome you to report any issues or provide feedback! 🙏

Version 3.0.0, which includes support for the Expo managed workflow, has now been released. I'm closing this thread. Please feel free to raise any issues if they arise.


Improve yeelight component

Description:
PR to address some comment after https://github.com/home-assistant/home-assistant/pull/21593 was merged.
Checklist:

[X] The code change is tested and works locally.
[X] Local tests pass with tox. Your PR cannot be merged unless tests pass
[X] There is no commented out code in this PR.

@MartinHjelmare I'm not sure how to address this comment: https://github.com/home-assistant/home-assistant/pull/21593#discussion_r268431644 . When I don't store light object, I have no mapping between light entity and yeelight device in component. I cant store light.entity_id here ( https://github.com/home-assistant/home-assistant/blob/9214934d47871575d6b235dd547fc1ccab79c029/homeassistant/components/yeelight/light.py#L100 ), because its null then. Even after calling add_entries.

When the entity is added, the entity platform helper will call entity.async_added_to_hass coroutine. We could add the entity_id to the store in that method.

Ok thanks will do. I'm also wondering, maybe I should move that services to light.py file and service methods there ? Or is it required that service calls are handled by component itself ?

Custom platform services must be registered under the integration component, ie yeelight.

@MartinHjelmare I understand all service calls should be in component domain. light.yeelight_something to yeelight.something. Does it also mean, that all service calls, should be implemented in component/init..py or they can be split in files component/light.py component/sensor.py ?

Do you mean service handlers when you write service calls?

Yes service handlers. Both handlers can be moved to light.py file.
On Sun, Mar 24, 2019, 18:22 Martin Hjelmare<EMAIL_ADDRESS>wrote:

Do you mean service handlers when you write service calls?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/pull/22347#issuecomment-475980281,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAXyxOt6yB4ES0wTaYml0M34bBNdxztMks5vZ7RzgaJpZM4cFf3f
.

Yes, it doesn't matter in what module the handlers are placed.

Ok, thanks for review !

@zewelor Just a few last PyLint fixes needed:
./homeassistant/components/yeelight/light.py:85:1: D202 No blank lines allowed after function docstring
./homeassistant/components/yeelight/__init__.py:1:1: D200 One-line docstring should fit on one line with quotes
./homeassistant/components/yeelight/__init__.py:146:1: E303 too many blank lines (3)
./homeassistant/components/yeelight/__init__.py:147:1: D202 No blank lines allowed after function docstring


Obey manual or default Telnet port choice

Change to support automatic port selection stopped it using a specified
or default 4444 port; automatic port was always used.

/morph test


Cleanup unused images after deployment

Codecov Report

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

@@           Coverage Diff           @@
##           master     #451   +/-   ##
=======================================
  Coverage   76.43%   76.43%
=======================================
  Files          45       45
  Lines        2763     2763
=======================================
  Hits         2112     2112
  Misses        651      651

Continue to review full report at Codecov.

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


add Python to Package Manager images

Python 3, build, and virtualenv are optional dependencies for an upcoming Package Manager release.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Should we use the Posit builds of Python? I'm not sure, but I think others will have the same question. The other images here all install Python from https://docs.posit.co/resources/install-python/ rather than the distro, e.g.:
https://github.com/rstudio/rstudio-docker-products/blob/5f47778a01441f00bdab433a0a603fe12704607a/product/base/Dockerfile.ubuntu2204#L115-L126
But just like with R, the Python version doesn't matter as much for PPM's git builders. Using Posit builds would just be more for consistency and in case users want to use Python for other things in the image.

I've updated the Package Manager Dockerfile to use the product-base-pro image to match what other products are doing.
We are still building Package Manager for Ubuntu 18.04. product-base-pro seems only to be built for Ubuntu 22.04. Do we still want to support 18.04? I know we've worked in the package-manager repository to drop support for 18.04.

@colearendt I'll wait for your sign-off on this since it's a fairly large change.


CODE CHANGE: Improving the UI of the WHOLE ABOUT  page

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the code change
Hey @PriyaGhosal there are issues raised about particular sections of the about us page .
Currently your About Page doesn't fits the standard of your home page and is being treated like a different part of it .
Proposed solution
I would have probably raised 2 to 3 issues to do this work but I will do it with a single issue.
The changes I want to make is  :

The navbar is not aligned with the original navbar
The page will look more similar to the website
The cards are not treated well , like the hover effect '
The footer section will be the same as of other websites  .
I will do this by today only so you can review the work  .
Please assign this task to me under hacktoberfest and GSSOC-extd

P.S. : Please give labels after you have seen the changes .
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

I would like to work on it. Please assign this to me.


Update idl

Coverage remained the same at 78.874% when pulling f3deecb2245a19508bd3b68c5284bf8479c0a6d0 on update_idl2 into 79e268d5892972e10256137057050d8b7ae1f2f7 on master.

Coverage remained the same at 78.874% when pulling 1fc32d64c1bde3214eec6dc8b1feaba10a2fc470 on update_idl2 into 79e268d5892972e10256137057050d8b7ae1f2f7 on master.


Actions containing Highlights display incorrectly

Actions have the sender's nickname to the right of the bar which separates nicknames and messages.
When an Action contains a Highlight, the action displays correctly except the nickname appears to the left of the aforementioned bar.
Here's an example
(Here's an example from the other side, courtesy of IRC user vectr0n)
This is likely a minor fix to move the name back across the bar. I would also encourage changing the color to the red highlight color. The placement of the nick and the star icon both clearly indicate that it's an Action, but nothing indicates that it's a Highlight except the sound and badge. I believe we would be better served by having Actions that contain Highlights appear red.

:+1:
@xPaw, do you think you could take a look at this?
I also agree with @easymac regarding the color: always color in red mentions, even in /me actions.


chore(deps): update renovatebot/github-action action to v36.0.2

This PR contains the following updates:

Package
Type
Update
Change

renovatebot/github-action
action
patch
v36.0.0 -> v36.0.2

Release Notes

renovatebot/github-action
v36.0.2
Compare Source
Miscellaneous Chores

deps: update dependency @types/node to v16.18.15 (aa87bcc)
deps: update dependency @types/node to v16.18.16 (410fbb5)
deps: update dependency eslint to v8.36.0 (ee2eba1)
deps: update dependency lint-staged to v13.2.0 (0729a6d)
deps: update linters to v5.55.0 (8251b81)

Continuous Integration

deps: update actions/checkout action to v3.5.0 (93298f3)
deps: update renovate docker tag to v35.10.0 (#710) (192a10f)
deps: update renovate docker tag to v35.10.2 (384026d)
deps: update renovate docker tag to v35.12.0 (#712) (d93bd6f)
deps: update renovate docker tag to v35.14.1 (fac115f)
deps: update renovate docker tag to v35.14.2 (8237d9f)
deps: update renovate docker tag to v35.14.3 (8bfabde)
deps: update renovate docker tag to v35.14.4 (0385e6b)
deps: update renovate docker tag to v35.15.0 (329c90c)
deps: update renovate docker tag to v35.17.0 (24a46e0)
deps: update renovate docker tag to v35.17.1 (614616f)
deps: update renovate docker tag to v35.18.0 (ed6a466)
deps: update renovate docker tag to v35.18.1 (9988a47)
deps: update renovate docker tag to v35.19.0 (d9993dd)

Build System

deps: update dependency semantic-release to v20.1.3 (d368e24)

v36.0.1
Compare Source
Miscellaneous Chores

deps: update dependency lint-staged to v13.1.4 (8bd8232)
deps: update dependency rimraf to v4.3.1 (94ca5a1)
deps: update dependency rimraf to v4.4.0 (1b93897)
deps: update linters to v5.54.1 (634aa04)
deps: update renovate docker tag to v35.6.0 (c65e90f)
reconfigure renovate (#708) (4f9981c)

Continuous Integration

deps: update actions/checkout action to v3.4.0 (d222b70)
deps: update renovate docker tag to v35.8.3 (a1313ca)
simplify (#705) (78e2234)

Documentation

update references to renovatebot/github-action to v36 (189eb78)
update toc (#706) (9caf6e5)

Build System

deps: update dependency semantic-release to v20 (#709) (5948ea8)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] 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.4 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

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


点击无反应

点击增加数量，和add to cart怎么没反应？

This functionality isn't released yet. We are working on a such functionality, but need to review it by framework author to get merged into example


feat(docs): implement swagger in documents and evidences controllers

PR Checklist
Please check if your PR fulfills the following requirements:

[ ] The commit message follows our guidelines
[ ] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

Issue Number: N/A
PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[x] Documentation content changes
[ ] Other... Please describe:

What is the current behavior? (Optional)

What is the new behavior?
Added documentation for the Documents and Evidences controllers, with their endpoints documented using Swagger v3.

Other information (Optional)


Warnings from prql-dotnet

What's up?
From https://github.com/PRQL/prql/pull/2140/files

Please could we either fix the issue, ignore the warnings, or disable the lint?
Not to blast @s — but @vanillajonathan & @eitsupi if you are up for taking a look...

Those warnings are because they get assigned from libprql so .NET isn't aware of it. I'll silence them.