Ego motion of the dataset

Hi,
Do you provide the ego-motion of the driving car with respect to some reference point in the world coordinate system?
This can be similar to other datasets like nuScenes and Argoverse.
Thanks in advance

Yes, each frame comes with a pose. https://github.com/waymo-research/waymo-open-dataset/blob/master/waymo_open_dataset/dataset.proto#L281
That pose defines the transform from vehicle frame to global frame (see our coordinate system definition on the website (https://waymo.com/open/data/).

Hi,
frame.pose is a Transform object, how can I convert it to an array?

https://github.com/waymo-research/waymo-open-dataset/blob/60df55a1a968a7ccce6c13a0b560a4af086561a7/waymo_open_dataset/utils/frame_utils.py#L108
Thanks, I find the solution.

Is it possible to get ego motions in terms of GPS coordinates? is lat,long,h for ENU coordinate frame of reference available?

Why do you need that?

I would like to use map information from OpenStreetMaps. Hence if I can convert these to GPS coordinates it'll be helpful

Ah, we do not provide map information yet.  We have plans for map but no ETA for now. Stay tuned.

Ah, we do not provide map information yet. We have plans for map but no ETA for now. Stay tuned.

As of today, have you added map information to the dataset?

Not yet. But we do have some work in progress. Stay tuned.

Not yet. But we do have some work in progress. Stay tuned.

Thank you! I am working on a research project and having GPS coordinates of the frame is quite essential. Could you share an expected timeline? It shall help determine if this information will be available anytime before my deadline. Thanks!

we do not plan to provide GPS coordinates.

we do not plan to provide GPS coordinates.

I am sorry but I am not familiar with coordinate systems. But is there any way that I could infer the location of the frame using the pose or information that you plan on adding to the dataset soon? If so, an approximate timeline? Thanks!


Video do not auto play inside Viewpager with getChildFragmentManager()

I'm using toroVersion = '3.0.0-beta1' with Android Studio 3.0 Canary 8. But the first fragment inside viewpager doesn't play automatically

im.ene.toro.widget.Container inside Viewpager with childFragmentManger

       VideoPagerAdapter adapter = new VideoPagerAdapter(getChildFragmentManager());
        for (VideoCategory category : categories) {
            adapter.addCategory(category);
        }
        viewPager.setAdapter(adapter);
        tlVideo.setupWithViewPager(viewPager);

Setup each fragment item like this

@Override
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
    layoutManager = new LinearLayoutManager(getContext());
    adapter = new VideoAdapter();
    container.setLayoutManager(layoutManager);
    container.setAdapter(adapter);
    container.setCacheManager(adapter);
    container.addOnScrollListener(new EndlessRecyclerOnScrollListener(layoutManager) {
        @Override
        public void onLoadMore(int current_page) {
            getVideos();
        }
    });
    container.setPlayerSelector(null);
    handler.postDelayed(() -> {
        if (container != null) container.setPlayerSelector(selector);
    }, 200);

}

Handle in setUserVisibleHint
@Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        Timber.e("isVisibleToUser: " + isVisibleToUser);
        Timber.e("categoryId: " + categoryId);
        if (isVisibleToUser) {
            selector = PlayerSelector.DEFAULT;
        } else {
            selector = PlayerSelector.NONE;
        }
        handler.postDelayed(() -> {
            if (container != null) container.setPlayerSelector(selector);
        }, 200);
    }

The first screen video doesn't auto play.
Please help to investigate. Thank you!

@toidv thanks. Can you show me a snapshot of how your "VideoCategory" looks like. Let me take a look overall first.

It is snapshot of VideoCategory @eneim
public class VideoCategory extends RealmObject {

    @PrimaryKey
    @SerializedName("id")
    @Expose
    private Integer id;
    @SerializedName("name")
    @Expose
    private String name;

    public VideoCategory() {

    }

    public VideoCategory(Integer id, String name) {
        this.id = id;
        this.name = name;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

}

Currently, The problem happened due to parent fragment did not dispatch setUserVisibleHint to child fragment in case of nested fragment inside Viewpager with getChildFragmentManager
My solution is

setUserVisibleHint(false on onCreate of fragment (default it is true)

@Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setUserVisibleHint(false);
    }

Create a method to dispatch setUserVisibleHint in ViewPagerAdapter

public class VideoPagerAdapter extends FragmentStatePagerAdapter {
    private final List<VideoCategory> categories = new ArrayList<>();
    private Fragment primary;

    public VideoPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public void setPrimaryItem(ViewGroup container, int position, Object object) {
        super.setPrimaryItem(container, position, object);
        if (object instanceof Fragment) {
            primary = (Fragment) object;
        }
    }

    public void setUserVisibleHint(boolean isVisible) {
        if (primary != null){
            primary.setUserVisibleHint(isVisible);
        }
    }
}

Dispatch setVisibleHint to child fragment

 @Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if (adapter != null) adapter.setUserVisibleHint(isVisibleToUser);
    }

Inside child fragment do as your solution

@Override
    public void setUserVisibleHint(boolean isVisibleToUser) {
        super.setUserVisibleHint(isVisibleToUser);
        if (isVisibleToUser) {
            selector = PlayerSelector.DEFAULT;
        } else {
            selector = PlayerSelector.NONE;
        }
        handler.postDelayed(() -> {
            if (container != null) container.setPlayerSelector(selector);
        }, 200);

    }

Thank you!

@toidv this is interesting. My example uses the ViewPager directly in Activity. Let me investigate more on this behaviour. But it sounds great you have found a working solution.

@toidv I create a sample project and can see that it is calling setUserVisibleHint. I wonder how you can reproduce your issue ...

In my application, I have a menu (Tablayout) and each menu item has a sub menu by itself @eneim. For example
|NEW|-|Video|-|Board|
||
|NEW|-|HOT|-|FITNESS|-|HAIR MAKE|

@toidv I see, so a big ViewPager whose each Page (which is a Fragment) is having another ViewPager right?

Yes, it is @eneim

@toidv I can reproduce your issue now. While I agree with your workaround, I have one comment: since setUserVisibleHint call doesn't follow the lifecycle, you should also check the case your Adapter is null and then update its when you create your Adapter. In detail: at launch, your ViewPager's second Fragment (call it Fragment1) will have userVisibility as false, while its own ViewPager will have its first Fragment's userVisibility as true. Fragment1 will call setUserVisibleHint before your Adapter is available --> Fragment1's first item in ViewPager will have.
Also calling "setUserVisibleHint(false);" from onCreate doesn't make sense to me. This method should not be bound to a lifecycle event, since it can be called randomly by system. (For instance: new Fragment in ViewPager will call the method before its onCreate, and that Fragment's ViewPager is setup after onCreate, you will not be able to pass the setUserVisibleHint call down to its Child). Also if you go back from a config changes, your ViewPager/Adapter will restore the primaryItem from onViewStateRestored and so on ... It may work, but I'm not sure it is bullet proof solution.
I'm creating a sample that mimic this and figure out a safe way to go for this.

@toidv I also push a new demo along with release 3.0.0, please take a look :D.

@eneim : Thank for your great support. Currently, I discover one more problem, for example. we have 5 Tablayouts: |NEW|HOT|FITNESS|HAIR MARKE|MAKE UP|  currently NEW is selected then user click to MAKE UP so setUserVisibleHint doesn't work correctly isVisibleToUser is false. To make it works, we have to add to parent fragment logic as below
vpVideo.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

            }

            @Override
            public void onPageSelected(int position) {
                if (adapter != null) adapter.setUserVisibleHint(isVisible());
            }

            @Override
            public void onPageScrollStateChanged(int state) {

            }
        });

@toidv I think everytime you switch page, the "setUserVisibleHint" is called, but it is not following life cycle. I wonder if your problem is "setUserVisibleHint" is not called? or it is called at the wrong timing?

Hello friends. I am facing same problem. here first video play successfully but next video not play what should i do ? please help me.


fix(apps/prod/jenkins-beta/release): fix plugin

Signed-off-by: wuhuizuo<EMAIL_ADDRESS>

/approve

/review default


Receiving Network error when fetching Gem

Currently receiving the following after adding to Gemfile & running bundle install:
Fetching source index from https://rubygems.org/
Resolving dependencies.....
Network error while fetching https://rubygems.org/quick/Marshal.4.8/stripe-ruby-mock-3.0.1.gemspec.rz (execution expired)

looks like it's workin ok now.


Create Unit Tests with Mock Data

The project needs unit tests that can run without network connectivity. We should have mock data download directly from the API and unit test against it. Also this will help create a shorter feedback loop

merged in changes. pytest -vv -m unit will only run the unit tests.
pytest -vv -m integration will only run integration tests.


AutoSlugField method find_unique not overridable

Just had the case, in which I needed to override the find_unique method.
I was creating a class from AutoSlugField:
class MySlugField(AutoSlugField):
    def find_unique(model_instance, slug_field, generator):
        my_custom = model_instance.code
        ...

Unfortunately the method is never called, due to the current implementation:
        return super(AutoSlugField, self).find_unique(
            model_instance, slug_field, self.slug_generator(original_slug, start))

Is there a reason for this implementation? If not I'd be happy to submit a PR.

Seems valuable to be able to override that method :-)
Happy to accept a PR


translation : structured generation into korean

What does this PR do?
this is PR presents the korean translation of RAG with source highlighting using Structured generation cookbook.
Who can review?
@jeongiin, @harheem, @boyunJang, @ahnjj, @SeungAhSon,@jun048098,@win2dvp21
May you please review this PR? @merveenoyan @stevhliu.

Thanks for your translation, great work! The doc-builder is having some issues at the moment, but we can merge once its fixed 🙂

Thanks for the review, i'll ask for it again in a week or so 😄

This should be ok to merge since it is fixed in https://github.com/huggingface/doc-builder/pull/531.

thanks again @stevhliu ,but i find build_pr_documentation has failed. can you take a look?

The error before was related to the environment used in the CI, but it should be fixed now in https://github.com/huggingface/doc-builder/pull/533!


new entry signals using candlestick patterns

Merging slusher w dev, one conflict seems to just be jupyter notebook, will resolve

removed slusher updates to jupyter notebook create_csv.ipynb


fix(queryObserver): allow refetch interval in service worker (#4018)

Resolves discussion in #4018
Note: The use of // eslint-disable-next-line is an intentional choice. The lint rule @typescript-eslint/no-unnecessary-condition works when typing is known. In this case globalThis is scoped to NodeJS's global namespace and therefore has the typings for only one environment of globalThis. It's a weird case which is why I put the ignore for this line only consistent with other uses of ignoring no-unnecessary-condition

Thanks for the PR. I think the thing I have missed in the discussion is that setInterval also exists in nodeJs. So with that change, we would likely add setInterval calls during server side rendering, wouldn't we?

Thanks for the quick comment @TkDodo !
I was under the assumption from your comment that this subscription code would only be run in effects

No, I think we can decouple setInterval calls from isServer checks. None if this code runs on the server anyways, because subscriptions are only created on the client (they run in effects / useSyncExternalStore, so not on the server)

Huh I guess you're right. Let me think about it and test it some more. Thanks for the contribution 🙌

Codecov Report
Base: 96.36% // Head: 96.79% // Increases project coverage by +0.43% :tada:

Coverage data is based on head (08684a2) compared to base (eab6e2c).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #4158      +/-   ##
==========================================
+ Coverage   96.36%   96.79%   +0.43%
==========================================
  Files          45       58      +13
  Lines        2281     2682     +401
  Branches      640      789     +149
==========================================
+ Hits         2198     2596     +398
- Misses         80       84       +4
+ Partials        3        2       -1

Impacted Files
Coverage Δ

src/react/useQueries.ts

src/react/logger.native.ts

src/core/mutationObserver.ts

src/react/reactBatchedUpdates.ts

src/devtools/Logo.tsx

src/devtools/theme.tsx

src/core/mutationCache.ts

src/react/Hydrate.tsx

src/devtools/styledComponents.ts

src/core/queriesObserver.ts

... and 93 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

what about if we would extend the isServer check to exclude the service worker environment? It seems like checking for a service worker can be done with checking for the WorkerGlobalScope ?
https://stackoverflow.com/questions/7931182/reliably-detect-if-the-script-is-executing-in-a-web-worker
I think other timeouts like staleTime and cacheTime would also profit from this?

what about if we would extend the isServer check to exclude the service worker environment? It seems like checking for a service worker can be done with checking for the WorkerGlobalScope

Makes sense to me. I'll update

@ElGrecode how's it going? Did you have time to update the PR?

Closing as I'm unable to dedicate time to it this month unfortunately. I'm trying to maintain good house keeping for these PRs. I will reopen with this context next month.


No Performance Gain over Base Avro

I am using Avro to parse messages generated by another vendor (I single fixed schema) and found that the parsing performance is not great.  I was looking for ways to improve performance when I came across avro-fastserde library.
My initial attempt at using the library was not successful, I was able to parse messages but the performance was identical to the base Avro implementation.  I was hoping you might be able to provide some additional insights into what I might be doing wrong as the documentation does not provide a complete working example.
In my case I have used the Avro schema provided by the vendor to generate a SpecificDatumParser and all supporting classes.  The code used to parse the messages looks something like this...
final SpecificDatumReader<HfReadData> avroHfReader = new SpecificDatumReader<HfReadData>(HfReadData.SCHEMA$);

DataFileReader<HfReadData> dataFileReader = new DataFileReader<HfReadData>(byteStream, avroHfReader);

while (dataFileReader.hasNext()) {
    HfReadData hfRead = hfReadQueue.take();
    hfRead = dataFileReader.next(hfRead);
    parseAvroMessage(hfRead);
}

where the parseAvroMessage() method parses the method into various objects before passing them on to the application for processing.  Note: the JSON schema is moderately simple consisting of a single record with an array of 1..n sub-records.  The parser method combines sets of sub-records into single objects.  This method consumes minimal cpu as verified using Java Mission Control to take Flight Recordings.
Here is the FastSerde implementation...
final FastSerdeCache serdeCache = new FastSerdeCache("./build/classes/main/com/serde");
final FastSpecificDatumReader<HfReadData> fastSpecificDatumReader = new FastSpecificDatumReader<HfReadData>(HfReadData.SCHEMA$, HfReadData.SCHEMA$, serdeCache);

DataFileReader<HfReadData> dataFileReader = new DataFileReader<HfReadData>(byteStream, fastSpecificDatumReader);

while (dataFileReader.hasNext()) {
    HfReadData hfRead = hfReadQueue.take();
    hfRead = dataFileReader.next(hfRead);
    parseAvroMessage(hfRead);
}

As noted above I get the exact same throughput regardless of whether I use FastSerde or base Avro. On my test setup it takes about 5min to process 100,000 messages and flight recordings from each test run show slight differences but otherwise are more or less the same.
You note that the FastSpecificDatumReader will fall back to the SpecificDatumReader if the specific classes are not available.  I am feeling this is most likely happening in my case (hence the identical performance). I feel like I have done something wrong but not sure what that is.

We're glad that you found our package as a way to improve the performance of your code. We hope it will eventually work in your scenario too.
Unfortunately, I see some unclarities in your example implementation, so it's hard to investigate this case without better insight into your real program/schemas (as I don't know what is an error in your code and what is just an error in code pasting). Similar routine (DataFileReader, FastSpecificDatumReader, 1M LargeAndFlat records) have 2x boost in my tests - so indeed it is very likely that your code is falling back to the default implementation.
Could you carefully verify that you don't have any error logs (especially at the start of processing) which could hint us what does not work?

Do you have to reuse HfReadData object? For now, we don't support object reuse (as stated in "Limitations" paragraph in the readme), so I think that may be some issue. You can verify, that plain "dataFileReader.next()" loop will work faster indeed.

Hi,
We’ve had great success with avro-fastserde in our own project. This is a truly fantastic piece of software. Thank you for that!
We have decided to invest in it and add some additional performance enhancements. Among those is support for object re-use. Our fork of this project is available here, if you’d like to take a look:
https://github.com/linkedin/avro-util
-F

Hi,
Glad to hear that you find this library useful! I briefly looked over your branch and the enhancements you made are really worth incorporating into this repository. Thank you for adding the object reuse. We haven't provided it to this day, because we didn't really need that feature and I wasn't sure if it won't spoil the overall performance gain. Would you mind if I asked you to provide the pull-request?

Sure, we can look into providing a PR. We have shied away from doing so so far because we were not sure whether our changes were useful and appropriate for you. In particular:

We have a mildly-annoying requirement to support many versions of Avro, because we need to support a mix of modern use cases written against Avro 1.7 and 1.8 as well as decade-old applications written against Avro 1.4. Unfortunately, Avro has poor API compatibility practices, which makes this tricky. Therefore, most of our infra projects (and fast-avro falls into this category) need to code against our avro-migration-helper shim in order to be compatible with many versions of Avro. This indirection adds a bit of complexity to the code, and is not really adding any value for users who have the luxury to depend on modern versions of Avro exclusively.

We have removed the locally-cached code-generated classes in our fork, because we considered that the code-gen time seemed acceptable as is and, more importantly, because we wanted to maintain the ability to iterate over the code-generation such that we had guarantees that deploying a new version of the lib would not result in interference by previous runs of the code-gen. This is not an insurmountable problem, so if the cache is really desired, we could address the freshness guarantees concern by versioning the code-generation and including the version as part of the cached classes' name, but we have not bothered doing that so far.

Since code generation is quite complex in general, we have made some refactoring which we believe improves readability, but which may not merge super cleanly. This is not necessarily a big deal, as long as you agree that the refactoring we did does improve readability and not the other way around (: ...

cc @gaojieliu
LMK what you think.
-F

Thank you for the detailed answer and willingness to provide the PR. However upon further consideration, I decided to provide the pull request by myself, basing partially on your changes.
This will cause less hassle for you and for us as well.
To be more specific, I will surely add the reuse parameter support but I won't provide the support for legacy avro versions, because we surely don't need this and I think that majority of potential users don't need it as well. I will also consider adding the option to switch generated classes caching on/off.
And I also admit that the readability is rather poor as-is and has to be rethinked and improved.
From our perspective this is a side project, so it may take a while for us to introduce these changes, but nevertheless they will appear soon.
Anyways, thank you for sharing your fork and investing your time into this project!

Oh, I just saw this by chance. Not sure why I didn't get the notification for it... anyway.
BTW, we have a fix for the object re-use which is not yet merged in the other repo, here: https://github.com/linkedin/avro-util/pull/10
That code (including the PR) runs in production and we have validated that object re-use works fully as expected.
-F


Support for Android apps targeting Android 8.0+

Feature Request
Feature description:
Support for Android apps targeting Android 8.0+ would be great. Notifications for apps built against API 26+ don't currently work it seems. Looking through the source it looks like they need to be configured to use notification channels for this, as per this blog post:
https://blog.xamarin.com/android-oreo-notification-channels/

Have you tried on a real device? Working here, but not in the emulator.

Same here. Doesn't work in simulator. I haven't tried on device since I don't own one currently. I hope someone else can confirm this?

Does not work on Note 8

Not working on Samsung Galaxy S8

Am also interested in this. Currently just targeting an Android 7.1, but would love to be able to update.

I ended up just building my own implementation of this. The key thing is that Android 8.0+ needs the ChannelId to be set. This means you need to create a channel first and then add the notification to the channel. The catch is that if you use the Mono.Android 8.0+ you have access to these methods for adding channel... but if you then run on Android <8.0, you get a "not implemented" exception for the Java method it's trying to call. So.... you need to differentiate between them in your code to use different implementations of the Notification Builder depending on version that it's running on.
I quickly pulled this Notifications interface together and then just consume it through the dependency service... It's not refined or polished by any stretch of the imagination, but I got it working this afternoon and thought it may help some others in a similar predicament...
`public class Notifications : INotifications
{
private NotificationManager _notificationMananger;
private const string GeneralChannelId = "com.yourapp.general";
private const string GeneralChannelName = "General";
private const NotificationImportance GeneralChannelImportance = NotificationImportance.Default;
    public Notifications()
    {
        _notificationMananger = Forms.Context.GetSystemService(Context.NotificationService) as NotificationManager;
        // Set up channels
        if (Build.VERSION.SdkInt >= Build.VERSION_CODES.O)
        {
            if (!_notificationMananger.NotificationChannels.Any(x => x.Id == GeneralChannelId))
            {
                NotificationChannel generalChannel = new NotificationChannel(GeneralChannelId, GeneralChannelName, GeneralChannelImportance);
                generalChannel.EnableVibration(false);
                generalChannel.LockscreenVisibility = NotificationVisibility.Public;
                _notificationMananger.CreateNotificationChannel(generalChannel);
            }
        }
    }

    public void Send(string title, string text, int id, bool isOngoing)
    {
        try
        {
            if (Build.VERSION.SdkInt >= Build.VERSION_CODES.O)
            {
                Notification.Builder builder = new Notification.Builder(Forms.Context, GeneralChannelId)
                    .SetContentTitle(title)
                    .SetContentText(text)
                    .SetSmallIcon(Resource.Drawable.X1)
                    .SetOngoing(isOngoing);

                Notification notification = builder.Build();
                _notificationMananger.Notify(id, notification);
            }
            else
            {
                NotificationCompat.Builder builder = new NotificationCompat.Builder(Forms.Context)
                .SetContentTitle(title)
                .SetContentText(text)
                .SetSmallIcon(Resource.Drawable.X1)
                .SetOngoing(isOngoing);

                Notification notification = builder.Build();
                _notificationMananger.Notify(id, notification);
            }

        }
        catch (Exception ex)
        {

        }
    }

    public void Remove(int id)
    {
        _notificationMananger.Cancel(id);
    }

}`

Hi @kylewhittington where should I put this code? in Mainactivity.cs?
Thanks in advance!

Thanks @kylewhittington! I'll try it

Thanks @kylewhittington! I added your code into the plugin code. So far it's working for me.
`
    /// <summary>
    /// Get or Set Resource Icon to display
    /// </summary>
    public static int NotificationIconId { get; set; }

    /// <summary>
    /// Get or Set id of the default channel for the app
    /// </summary>
    public static string GeneralChannelId { get; set; }

    /// <summary>
    /// Get or Set the user visible name of this channel.
    /// </summary>
    public static string GeneralChannelName { get; set; } = "General";

    /// <summary>
    /// Get or Set this channel's notification importance
    /// </summary>
    public static NotificationImportance GeneralChannelImportance { get; set; } = NotificationImportance.Default;

    /// <summary>
    /// Show a local notification
    /// </summary>
    /// <param name="title">Title of the notification</param>
    /// <param name="body">Body or description of the notification</param>
    /// <param name="id">Id of the notification</param>
    public void Show(string title, string body, int id = 0)
    {
        NotificationManager notificationManager = Android.App.Application.Context.GetSystemService(Context.NotificationService) as NotificationManager;

        if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
        {
            if (GeneralChannelId == null)
            {
                throw new NullReferenceException("[LocalNotificationsImplementation] You need to defined GeneralChannelId for Android (Build.VERSION.SdkInt >= BuildVersionCodes.O). " +
                    "Example: LocalNotificationImplementation.GeneralChannelId = \"com.yourapp.general\"");
            }
            else
            {
                if (!notificationManager.NotificationChannels.Any(x => x.Id == GeneralChannelId))
                {

                    NotificationChannel generalChannel = new NotificationChannel(GeneralChannelId, GeneralChannelName, GeneralChannelImportance);
                    generalChannel.EnableVibration(false);
                    generalChannel.LockscreenVisibility = NotificationVisibility.Public;
                    notificationManager.CreateNotificationChannel(generalChannel);
                }
                Notification.Builder builder = new Notification.Builder(Application.Context, GeneralChannelId)
                    .SetContentTitle(title)
                    .SetContentText(body)
                    .SetAutoCancel(true)
                    .SetOngoing(false);

                if (NotificationIconId != 0)
                {
                    builder.SetSmallIcon(NotificationIconId);
                }
                else
                {
                    builder.SetSmallIcon(Resource.Drawable.plugin_lc_smallicon);
                }
                var resultIntent = GetLauncherActivity();
                resultIntent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
                var stackBuilder = Android.Support.V4.App.TaskStackBuilder.Create(Application.Context);
                stackBuilder.AddNextIntent(resultIntent);
                var resultPendingIntent =
                    stackBuilder.GetPendingIntent(0, (int)PendingIntentFlags.UpdateCurrent);
                builder.SetContentIntent(resultPendingIntent);
                notificationManager.Notify(id, builder.Build());
            }
        }
        else
        {
            NotificationCompat.Builder builder = new NotificationCompat.Builder(Application.Context);
            builder.SetContentTitle(title);
            builder.SetContentText(body);
            builder.SetAutoCancel(true);

            if (NotificationIconId != 0)
            {
                builder.SetSmallIcon(NotificationIconId);
            }
            else
            {
                builder.SetSmallIcon(Resource.Drawable.plugin_lc_smallicon);
            }

            var resultIntent = GetLauncherActivity();
            resultIntent.SetFlags(ActivityFlags.NewTask | ActivityFlags.ClearTask);
            var stackBuilder = Android.Support.V4.App.TaskStackBuilder.Create(Application.Context);
            stackBuilder.AddNextIntent(resultIntent);
            var resultPendingIntent =
                stackBuilder.GetPendingIntent(0, (int)PendingIntentFlags.UpdateCurrent);
            builder.SetContentIntent(resultPendingIntent);

            notificationManager.Notify(id, builder.Build());
        }

    }

`

Is the code here going to be fixed to support apps targeting Android 8.0+? @maculit Wanna submit a PR for that?

Hi  @maculit in which file did you add the code?

@joncortez will submit PR soon. @santiagobiart I edited LocalNotificationsImplementation.cs in Android project of the plugin.

Support for Android Oreo+ is available in the latest pre-release NuGet for testing: https://www.nuget.org/packages/Xam.Plugins.Notifier/3.0.1-beta20


Hotfix : Fix Metrics.Registries config update for apps with runtime < 9.7.0

For older apps with runtimes < 9.7.0, we don't enable metrics via micrometer. So
return an empty list for the metrics registry configuration override.

lgtm


build: update github.com/moov-io/ach to v1.2.0-rc1

cc @rayjlinden

Codecov Report

Merging #262 into master will increase coverage by 0.04%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master    #262      +/-   ##
=========================================
+ Coverage   61.15%   61.2%   +0.04%
=========================================
  Files          33      33
  Lines        4683    4683
=========================================
+ Hits         2864    2866       +2
+ Misses       1277    1276       -1
+ Partials      542     541       -1

Impacted Files
Coverage Δ

internal/accounts.go
80.82% <0%> (+2.73%)
:arrow_up:

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 0ff8b01...60dd3f7. Read the comment docs.


RNN prediction is broken in bleeding-edge Theano

If I take a model over which I know the BLEU score (in this case, 11.11) and run it on bleeding-edge Theano code (pip install git+git://github.com/Theano/Theano.git) then something is seriously broken:
BLEU = 0.00, 40.2/0.0/0.0/0.0 (BP=0.000, ratio=0.050, hyp_len=1255, ref_len=24880)
If anyone else experiences this problem, please reply to this issue. It may be caused by an unexpected change to how recurrence() works in bleeding-edge Theano, or something even more sinister.

Closing because it seems to work fine in Theano 0.71a1 (https://github.com/Theano/Theano/releases/tag/rel-0.7.1a1)


Unable to use lunchable as CLI

lunchable version: 1.1.0
Python version: 3.12.1
Operating System: MacOS

Description
I tried to install and use Lunchable as a CLI without trying it as a package. The steps I expected to be enough for making it work were:

Having the LUNCHMONEY_ACCESS_TOKEN variable available;
Executing any lunchable command in a shell with the package installed.

In all trials (detailed below) I got a ModuleNotFoundError: No module named 'numpy'. As a hypothesis, I believe it can have to do with the combination of the ways I installed it and the fact that pandas (and therefore numpy) is a optional dependency in pyproject.toml.
I eventually made it work by manually running poetry add pandas to my project.
I expected to be able to use Lunchable's CLI directly from the installation methods I chose, which are analogous to pip install.
What I Did
Trial 1
pipx install lunchable
lunchable --version

Trial 2 (in a poetry project)
poetry add lunchable
poetry install
poetry run lunchable --version

In both trials, the env variable LUNCHMONEY_ACCESS_TOKEN was available, and both returned the ModuleNotFoundError.

The issue you're encountering with Lunchable is related to missing dependencies, specifically the 'numpy' module. While 'numpy' might be an optional dependency for Lunchable according to its pyproject.toml, it seems that the installation methods you've tried do not automatically install these optional dependencies.
To resolve this issue install them manually:
pip install pandas numpy
After installing these dependencies, you should be able to use Lunchable's CLI without any ModuleNotFoundError issues.
However, if there are other optional dependencies mentioned in Lunchable's pyproject.toml, you might need to install them as well if you plan to use those features.

Which CLI command are you running?
If you're using a plugin like PrimeLunch you'll need to install with extras.
I recommend the "all" extras:
pipx install "lunchable[all]"

Hey @felippecaso @Lilneo786 sorry for the troubles. There are two plugins on the CLI that require extra packages to be installed: primelunch and splitlunch. I've fixed the CLI so you will only encounter an ImportError when trying to run these plugins specifically. If you're interested in the plugins I recommend running the following command to get all the extra packages:
pipx install "lunchable[all]"

:tada: This issue has been resolved in version 1.1.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

Awesome, @juftin! Thanks for the response and for the patch

Just a follow up here, lunchable's plugins have been moved into their own separate packages outside of the main lunchable repo:

PushLunch: Push Notifications via Pushover
SplitLunch: Splitwise Integration
PrimeLunch: Amazon Transaction Updater

They're all still accessible from the lunchable CLI as long as they're installed into the same environment as lunchable via a new plugin framework.
If you're interested in using these plugins the best way to install them is using the plugins extra (the all extra still works too):
pipx install "lunchable[all]"

And to access them from the command line:
lunchable plugins ...


[WIP] cabal only local-cluster build.

Important thing is plutip uses base ====<IP_ADDRESS>. Base is packaged together with ghc and this version is packed with ghc 8.10.7.
I run nix-shell -p haskell.compiler.ghc8107 to get shell with this ghc (then cabal picks this one up). I don't know how cabal-only people deal with this, can't imagine reinstalling your system wide ghc for that.
I took the deps using one of:

checking cabal.project.freeze
cabal-info plan from https://hackage.haskell.org/package/cabal-info-0.2.1/docs/Cabal-Info.html

There's many deps present on hackage which i list in cabal.project/extra-packages. Some of them are named on hackage differently (often i.e. haskell-aeson instead of aeson), but for me it was manual guessing/browsing game.
If package is not found by cabal I did (may not be optimal): 0. comment it out 1. correct its name 2. add it as source-repository-package.
Then there's is source-repository-package which I copied from bot-plutus-interface and plutus-apps (in some combination).
There's files needed_deps, sources_bpi and sources_plutus_apps  which I made I don't remember how and were basis for what is listed in cabal.project.

First build secp256k1 from source, follow this guide. Then run cabal build, assuming there's patched libSodium on your system.
Tested on:

Arch linux
ghc version 8.10.7

Closed as do not required anymore.
Work on [vasil-local-cluster-cabal-build](https://github.com/mlabs-haskell/plutip/tree/vasil-local-cluster-cabal-build) is finished, and it will stay as a separate branch top serve it's purpose.


⚠ Bofrost.lu has degraded performance

In 7445a6e, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1847 ms

Resolved: Bofrost.lu performance has improved in f904794 after 20 minutes.


Battery pin connectors

Hi Alex,
I hope you had a good time during your vacation, welcome back.  I noticed that you are not using the battery XT-60 connector; which makes sense since otherwise your station would have not been available to swap batteries.  Would you mind letting me know the pin connector are you using and did you purchased them from here?
Thanks, and best regards!
~~Al

Yeah, I had some good time, thanks :)
I'm actually using XT-60 in three places:

But for the connection between battery and copter, I'm using these pins.  3x of them for each power wire (8x3= 24 Amps) and 1x for additional wires to balance charging.


Update recipe for py312_patch

Preparation for py312 release.

Linter check found the following problems:
The following problems have been found:
ERROR: clone/recipe/meta.yaml:22: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: clone/recipe/meta.yaml:22: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
Errors were found


temporary fix for German page localization

We have encountered something strange with translation: For some reason the German page of our docs translates the Q# Style Guide with "F# Stil-Handbuch" (https://docs.microsoft.com/de-de/quantum/resources/contributing/style-guide?tabs=guidance): Q# becomes F# for some reason. The same seems to be the case for a couple of other places, but not everywhere. I'd expect that other pages are affected as well.
Since this issue is introduced by are Machine Translation engine, it will take a while to get it fixed.
Temporary fix: “Q#” in the no-loc tag which will prevent it from getting localized

@gillenhaalb can you please let me know when you add “Q#” to the no-loc tag list on https://github.com/MicrosoftDocs/quantum-docs-pr/blob/live/articles/concepts/vectors-and-matrices.md article ? There is an active production issue pending this update.

@KittyYeungQ Sorry for the delay. I forgot to ping you with a question I had when I first saw it: should I only make the change on this single page, or just go ahead and add the no-loc tag list to all documentation pages? (For this fix specifically they would only include "Q#", not the full LaTeX stuff we're still working on).

We have found a similar issue with the Spanish page. The temporary solution is suggested by the docs localization team. Do you think it will work?
In the Spanish translations for our documentation:
https://docs.microsoft.com/es-es/quantum/resources/contributing/style-guide?tabs=guidance
https://docs.microsoft.com/es-mx/quantum/resources/contributing/style-guide?tabs=guidance
The term Q# is being translated as if it were "Q&A" resulting in "preguntas y respuestas", which makes part of the content nonsensical.

@KittyYeungQ Worth a shot. Before I go through and do it all, just want to confirm that that's a "yes" to adding it to every page?

Yes


Add the ability to parse .css imports

What are you trying to accomplish with this PR?
From https://github.com/Shopify/slate/issues/677
Currently slate will fail when trying to import a .css file. This is especially useful when wanting to import a packages css files.
Checklist
For contributors:

[x] I have updated the docs to reflect these changes, if applicable.

For maintainers:

[ ] I have :tophat:'d these changes.

Closing for #810


Feature Request : Kerberos module for username and password enum through Kerberos

I was wondering if it was possible to incorporate a new module like the existing smb,winrm,mssql named Kerberos which could validate usernames and passwords via Kerberos. Something similar to kerbrute.
As seen from the current problem kerbrute does not allow extensive password spraying, Some features like classic NTLM spray do not work on that.
Plus Kerbrute is a go binary which is not compatible with proxychains, whereas crackmapexec does.
Its just a request, BTW, I love this tool and use it every day on my journey to become a Red Teamer. Thank you @mpgn @byt3bl33d3r and all other contributors for bringing in and maintaining such a beautiful product kudos to you all :+1:

You mean this: https://twitter.com/mpgn_x64/status/1587101999006351361


Add Chia Nan University of Pharmacy ＆ Science

Add Taiwan Chia Nan University of Pharmacy ＆ Science
Thanks

@k99483 Pull request merged. Thank you!


Question about the ID type

Hello,
I read that in GraphQL is better go have a global id, for caching reasons (https://graphql.org/learn/caching/).
When using AWS Aurora, what type should I select to use that feature?
Perhaps VARCHAR(64)?
Or what type should I use so Amplify generates ID! instead of Int! ?
The only thing I found is this inside the resolver:
$util.autoId()
Here:
https://docs.aws.amazon.com/appsync/latest/devguide/tutorial-rds-resolvers.html
But nothing about the type I have to use in AWS Aurora.
NOTE: Here
https://docs.aws.amazon.com/appsync/latest/devguide/resolver-util-reference.html
I found
$util.autoId() : String
Returns a 128-bit randomly generated UUID.
Does Amplify detects that?
But here:
https://mysqlserverteam.com/storing-uuid-values-in-mysql-tables/
I see 36 char instead of 16 (128/8)
What should I do?
Thanks a lot for suggestions.
Which Category is your question related to?
code generation
Amplify CLI Version
4.2.0
What AWS Services are you utilizing?
AWS Aurora, AppSync, Amplify

Hi @Ricardo1980,
I did some digging into the source code regarding your question, and it doesn't seem like the Amplify CLI supports using autogenerated GUID's (from $util.autoid()) in the AppSync resolvers for Aurora data-sources. I believe however, if you can setup your Aurora/MySQL tables to automatically generate String GUID's on new records being inserted, Amplify will support that. I haven't tested this myself, but just looking through the source it seems like it will work.
Regarding the "ideal" MySQL database type to use for GUID's at scale, it's actually BINARY(16). Here's a detailed article on why: http://mysql.rjweb.org/doc.php/uuid
Finally, as to why VARCHAR(36) instead of VARCHAR(16), is because Strings & Text are stored as Unicode/UTF8/UCS2 in MySQL, which are "double-byte" character sets (for example vs. ASCII, which is not). That means for every single character stored on disk is actually two bytes_ long. See mysql.com/..unicode-ucs2.html

Hello @rrrix , thanks for your reply.
In your link I see:
"most INSERTs involve a disk hit. Even on a beefy system, this limits you to a few hundred INSERTs per second."
That is not good.
Perhaps I am overcomplicating this thing. Maybe we should use UUID when working with DynamoDB (NoSQL), and autoincrementing integer ids when using Aurora (SQL). What do you think?
Last question, I see in the GraphQL schema definition (https://graphql.org/learn/schema/) this:
"ID: The ID scalar type represents a unique identifier, often used to refetch an object or as the key for a cache. The ID type is serialized in the same way as a String; however, defining it as an ID signifies that it is not intended to be human‐readable."
Does that mean I should not use ID! in the schema definition when I use auto increment integers as identifiers in my tables (because it is not a string)?
Thanks a lot.

Hi @Ricardo1980 ,
You should consider that the disk hits will happen only when the index reaches a size that cannot be cached.
Using UUID with DynamoDB and auto-incrementing integer ID's with Aurora is a reasonable approach.
Yes, you should use type Int in your schema since integers in Aurora are not parsed as the ID in the transformer.

Thanks @nikhname
I solved the ID issue. It is working fine. I am using BINARY(16) in the data base, and in the resolvers I use HEX and UNHEX to convert from ID to binary and binary to ID. I also added an extra line in the resolvers to remove the 4 hyphens
Everything seems to work perfectly (I am developing the system, I didn't test the system on scale).
Here an example:
#set($id = $util.autoId().replace("-",""))
{
  "version": "2018-05-29",
  "statements": ["INSERT INTO UserChangeRequest (userChangeRequestId, creationDate) VALUES (UNHEX('$id'), CURDATE())",
  "SELECT * FROM UserChangeRequest WHERE userChangeRequestId=UNHEX('$id')"]
}

One of the reasons I do this, perhaps I am wrong, is that it seems to me that integration with Cognito and security is easier. Let me explain. My data dase has a User table, with a lot of relationships with other tables. If the Cognito id and table user is exactly the same, everything seems much easier.
For example, in my data base, a user can send a like to another user, which is just another table with 2 user ids (liker and liked). I can use the $ctx.identity.cognitoIdentityId as the user that sends the like in the database.
Doing that, I make sure no user can send likes to other users on behalf of another one.
I can also make sure the current user can modify only its profile, not other's people profile.
Without that trick, imagine I use auto-increment ids in the user table, and in an extra field I save the cognito id.
SELECTs and INSERTs are more complex and I also have to retrieve the cognito id with another SELECT all the time inside the resolvers.
Am I right? How do you usually solve this problem?
Thanks a lot for suggestions.

@Ricardo1980 I don't see anything wrong with your approach. Using pipeline resolvers is a valid way to approach this as well. It is not bad practice to use the pipeline resolver to check if the user is admin on every request.

Thanks a lot @nikhname


BGPQ3 argument string granularity

Environment

Python version:  3.5.3
Peering Manager version:  master

Proposed Functionality
Implement a mechanism that provides BGPQ3 argument strings that can be implemented on a per router, per-IX or per-peer basis.

Use Case
In a multi-vendor network, BGPQ3 argument strings would need to be customized for at least a specific OS type.  Other requirements could be to specify prefix-list or route-filter-list on a per-peer basis.  Other requirements could be to set a specific list of IRR server hosts or IRR source lists on a per-IX basis.

External Dependencies

Right now the OS type shouldn't be relevant to bgpq3 config - peering-manager is using JSON response type from bgpq3 and parsing the response.
You get served the prefix object itself when generating the configuration in the Jinja template, so can opt to generate any type of list in the correct format here.
You can globally specify other specifics (IRR source, max/min prefix lengths, other bgp3 command line flags), but to have this per IX would be an enhancement - it definitely makes sense I think with the new BGP Groups feature coming which covers more than  just IX peers.

Ah!  I had a ; at the end of {{ p.prefix }} in my XR template.  Thanks for the clue!  I'll reformulate the text in the original issue.


clear 'shipment sync scope' if ShiSptation says it's unmodifiable

Task linked: CU-2w5ch6p Re-sync orders to SS for those that didn't sync automatically


Support ESP32

The issue tracker is a great place to ask for enhancements and to report bugs.
If you have some questions or if you need help, some people might help you on the Gitter room.
Before submitting your issue, make sure:

[ ] You've read the documentation for your release (in the docs/ folder or at http://marvinroger.github.io/homie-esp8266/) which contains some answsers to the most common problems (notably the Limitations and know issues and Troubleshooting pages)
[ ] You're using the examples bundled in your release, which are in the examples/ folder of the .zip of the release you're using. Examples might not be backward-compatible

Thanks!

When do you plan to add support for ESP32 in Homie? I’m willing to contribute if I can find the time, but would need to understand what changes need to be made to Homie.

async tcp library: see https://github.com/me-no-dev/AsyncTCP
check what it takes to get https://github.com/marvinroger/async-mqtt-client compatible with point 1.
check what it takes to make Homie compatible with point 2

there is a similar topic here https://github.com/marvinroger/homie-esp8266/issues/353
i will also love to see and help with support for esp32 on homie.
Because i have upgrade most of my esp from 8266 to 32 an i cant use homie any more

Let's first try to make the asyncmqtt compatible.  Then a ticker lib (requires some FreeRTOS knowledge). For the ticker, me-no-dev also did some work for it, but not yet release-ready. You you replace this by a millis()-polling design meanwhile. Homie's code itself is largely genetica.

Is anyone aware if Espressif plans to contribute to either of these libraries?

another roadblock: there's no webserver yet for the ESP32. So config-mode is not working. There's a ticket for at the Arduino-esp32-repo and as I understand we'll have to wait for a seperate repo for a (async?) webserver compatible with both esp8266 and esp32. Once it's there we can a have another look at it.
Anyway, an eventual esp32 implementation should belong in it's own repo as it is another implementation ,which will be largely the same but not quite.

Thanks for all the great discussion. Clearly larger than I thought.

It would be nice to start working on these issues :)

I didn't know it was already available. It's on @marvinroger 's to do list I think.
But again, the esp32 version should belong in it's own repo IHMO. Now the codebase is still largely the same but maybe it will not be the case eventually (TLS/SSL for example).

No i totally agree, it should be in a different repo !!! (most definitely should be).
Just thinking if homie was changed to use ESPAsyncWebServer then porting homie to esp32 would be that much easier. Additionally it makes sense to use async where possible.
We should try keep the same featured for both.

I have moved homie over to AsyncWebServer. https://github.com/timpur/homie-esp8266. Still testing and fixing up doc related stuff. When done ill make a pull request
@marvinroger hope you think this is the right progress for homie.

is _sendCROS() a typo? Did you mean CORS or is it on purpose?

@timpur: you did the changes on the develop branch right? (so I clone the right repo)

Yep all on the dev branch. I was going to test more before making a Pull request?

@bertmelis @tripflex News !!!!
Last night at 1am (for me), i successfully ported the Homie to the esp32, Since it was so late for me i havnt commited any code, as i want to fix up, what is propably quite dogy code (beeing done at 1am....). Inital tests at 1am show that all seems to work as you'd expect. Still some stablity issues that need ironing out, but had the config mode work with the ui, and could successfully connect to mqtt... so a good start. Will do some cleaning up over the weekend and need to push some things to ESP32 Arduino that was missing, but im exited .....
There acutally wernt that many changes need to port homie over (more a couple of esentials from the arduino framwork), this begs the question, can we have one port for both esp8266 and esp32 ? This woiuld make mangaing code easier .... lets discus.
ESP32 here we come :)

Update, done some testing and things seem quite stable. A couple of minor glitches but only in config mode...
Will try to fix and get it ready for you guys to play with :)

https://github.com/craftmetrics/esp32-homie

Hi Timpur
thanks for your work
today i'm tryng to compile an homie example for esp32 , but the errors are
ATTENZIONE: Cartella spuria .circleci nella libreria 'Homie'
Opzioni di compilazione cambiate, ricompilo tutto
ATTENZIONE: la libreria homie-esp8266-esp32 dichiara di funzionare sulle architetture (esp8266) e potrebbe non essere compatibile con la tua scheda che utilizza l'architettura (esp32)
ATTENZIONE: la libreria async-mqtt-client-master dichiara di funzionare sulle architetture (esp8266) e potrebbe non essere compatibile con la tua scheda che utilizza l'architettura (esp32)
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/.././Utils/../.././Homie/Datatypes/Callbacks.hpp:4:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/.././Utils/../../HomieSetting.hpp:6,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/.././Utils/Validation.hpp:8,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/../Config.hpp:11,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.hpp:6,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.h:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/examples/LightOnOff/LightOnOff.ino:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Datatypes/.././Utils/../.././Homie/Datatypes/../../HomieEvent.hpp:31:3: error: 'WiFiDisconnectReason' does not name a type
WiFiDisconnectReason wifiReason;
^
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.hpp:12:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.h:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/examples/LightOnOff/LightOnOff.ino:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Boot/BootNormal.hpp:74:3: error: 'WiFiEventHandler' does not name a type
WiFiEventHandler _wifiGotIpHandler;
^
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Boot/BootNormal.hpp:75:3: error: 'WiFiEventHandler' does not name a type
WiFiEventHandler _wifiDisconnectedHandler;
^
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Boot/BootNormal.hpp:96:27: error: 'WiFiEventStationModeGotIP' does not name a type
void _onWifiGotIp(const WiFiEventStationModeGotIP& event);
^
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Boot/BootNormal.hpp:97:34: error: 'WiFiEventStationModeDisconnected' does not name a type
void _onWifiDisconnected(const WiFiEventStationModeDisconnected& event);
^
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.hpp:12:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.h:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/examples/LightOnOff/LightOnOff.ino:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie/Boot/BootNormal.hpp:107:59: error: 'UPDATE_ERROR_OK' was not declared in this scope
void _endOtaUpdate(bool success, uint8_t update_error = UPDATE_ERROR_OK);
^
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.h:4:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/examples/LightOnOff/LightOnOff.ino:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.hpp:73:49: error: 'RFMode' has not been declared
static void doDeepSleep(uint32_t time_us = 0, RFMode mode = RF_DEFAULT);
^
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/Homie.hpp:73:63: error: 'RF_DEFAULT' was not declared in this scope
static void doDeepSleep(uint32_t time_us = 0, RFMode mode = RF_DEFAULT);
^
exit status 1
Errore durante la compilazione per la scheda ESP32 Dev Module.
I'm using
this https://github.com/timpur/homie-esp8266/tree/esp32
and this https://github.com/espressif/arduino-esp32
thanks in advance!

@maurostaiti and everyone else, so sorry i some how forgot to push my changes to the esp32 branch ... awks.
@maurostaiti, as your comment contains a long stack trace im going to remove, please repost if you have anymore issues.

hi
Unfortunately other errors occurs:
`ATTENZIONE: Cartella spuria .circleci nella libreria 'Homie'
ATTENZIONE: la libreria homie-esp8266-esp32 dichiara di funzionare sulle architetture (esp8266) e potrebbe non essere compatibile con la tua scheda che utilizza l'architettura (esp32)
ATTENZIONE: la libreria async-mqtt-client-master dichiara di funzionare sulle architetture (esp8266) e potrebbe non essere compatibile con la tua scheda che utilizza l'architettura (esp32)
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp: In instantiation of 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = bool]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:121:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:66: error: invalid initialization of non-const reference of type 'ArduinoJson::JsonObject&' from an rvalue of type 'ArduinoJson::JsonObject'
JsonObject& settings = configObject["settings"].as();
^
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp: In instantiation of 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = long int]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = long int]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:122:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:66: error: invalid initialization of non-const reference of type 'ArduinoJson::JsonObject&' from an rvalue of type 'ArduinoJson::JsonObject'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp: In instantiation of 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = double]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = double]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:123:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:66: error: invalid initialization of non-const reference of type 'ArduinoJson::JsonObject&' from an rvalue of type 'ArduinoJson::JsonObject'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp: In instantiation of 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = const char*]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = const char*]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:124:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:66: error: invalid initialization of non-const reference of type 'ArduinoJson::JsonObject&' from an rvalue of type 'ArduinoJson::JsonObject'
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.ipp:11:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:152,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:10,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObjectSubscript.hpp: In instantiation of 'TValue ArduinoJson::JsonObjectSubscript::as() const [with TValue = ArduinoJson::JsonObject; TKey = const char*]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:65:   required from 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:121:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObjectSubscript.hpp:45:36: error: use of deleted function 'ArduinoJson::JsonObject::JsonObject(ArduinoJson::JsonObject&&)'
return _object.get(_key);
                                ^

In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:10:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:34:7: note: 'ArduinoJson::JsonObject::JsonObject(ArduinoJson::JsonObject&&)' is implicitly deleted because the default definition would be ill-formed:
class JsonObject : public Internals::JsonPrintable,
   ^

In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonArray.hpp:13:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:9,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/ReferenceType.hpp:29:3: error: 'ArduinoJson::Internals::ReferenceType::ReferenceType(const ArduinoJson::Internals::ReferenceType&)' is private
ReferenceType(const ReferenceType&);
^
In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:10:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:34:7: error: within this context
class JsonObject : public Internals::JsonPrintable,
   ^

In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:152:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:10,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.ipp: In instantiation of 'T ArduinoJson::JsonObject::get(ArduinoJson::JsonObjectKey) const [with T = ArduinoJson::JsonObject]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObjectSubscript.hpp:45:36:   required from 'TValue ArduinoJson::JsonObjectSubscript::as() const [with TValue = ArduinoJson::JsonObject; TKey = const char*]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:65:   required from 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:121:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.ipp:23:71: error: use of deleted function 'ArduinoJson::JsonObject::JsonObject(ArduinoJson::JsonObject&&)'
return node ? node->content.value.as() : JsonVariant::invalid();
                                                                   ^

In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/../JsonVariant.hpp:107:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/../JsonBuffer.hpp:15,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/BlockJsonBuffer.hpp:10,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/DynamicJsonBuffer.hpp:10,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:8,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/../JsonVariant.ipp: In instantiation of 'static T ArduinoJson::JsonVariant::invalid() [with T = ArduinoJson::JsonObject]':
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.ipp:23:70:   required from 'T ArduinoJson::JsonObject::get(ArduinoJson::JsonObjectKey) const [with T = ArduinoJson::JsonObject]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObjectSubscript.hpp:45:36:   required from 'TValue ArduinoJson::JsonObjectSubscript::as() const [with TValue = ArduinoJson::JsonObject; TKey = const char*]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:82:65:   required from 'HomieInternals::ValidationResult HomieInternals::Config::saveSetting(const char*, T) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:54:89:   required from 'bool HomieSetting::set(T, bool) [with T = bool]'
/home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:121:16:   required from here
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/Internals/../JsonVariant.ipp:163:12: error: no matching function for call to 'ArduinoJson::JsonObject::JsonObject()'
return T();
        ^

In file included from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson.h:10:0,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/ArduinoJson.h:14,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/../Config.hpp:4,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/./Homie/Datatypes/Interface.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.hpp:7,
from /home/mauro/Scaricati/arduino-1.8.5/libraries/homie-esp8266-esp32/src/HomieSetting.cpp:1:
/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:42:25: note: candidate: ArduinoJson::JsonObject::JsonObject(ArduinoJson::JsonBuffer*)
FORCE_INLINE explicit JsonObject(JsonBuffer* buffer)
                     ^

/home/mauro/Scaricati/arduino-1.8.5/libraries/ArduinoJson/src/../include/ArduinoJson/JsonObject.hpp:42:25: note:   candidate expects 1 argument, 0 provided
exit status 1
Errore durante la compilazione per la scheda Adafruit ESP32 Feather.``

Hi Tim
Please ignore my previous post. i've managet to solve them , was my json lib out of date.
thanks for your hard work
Mauro

Any updates on the status of the ESP32 implementation? I noticed the https://github.com/timpur/homie-esp8266/tree/esp32 branch hasn't been updated since May, so just wondering if it is still maintained?

sadly not, im no longer really working on this project sadly, hopefully some one will like to pick it up ?

Also really/very interested in ESP32 support as an ESP32 board makes more sense now than a less versatile ESP8266 board.
Is it possible to merge the Timpur's work once for all or is there any blocking things here and there?
Could be really terrific to have Homie 2.0/3.0 on these boards.

The #develop-v3 branch supports ESP32 since some days.

The develop-v3 branch supports the convention 3.0.1. The convention is not completely backward-compatible, but for almost all relevant usecases.
There are also some API changes in the homie-esp8266 implementation. However, it is already quite stable, so you can give it a try.

As a major version change, maybe it's time to merge into master?

I've been lurking here meaning to post a question like @lorenwest's for a while. Seems like:

There hasn't been a release for quite a while, so something like Platform.io is quite out of date
master is quite stable, and can be used without much worry
develop is ahead of master, but compatible with the API there?
develop-v3` is a new API, so not compatible?

TBH, the last two are most confusing to me as it seems like homie-esp8266 should be versioned itself, and it also wants to support two different versions of the Homie spec. At least, I think that's the current intention of the two branches.
Would there be interest in stable-v2 and a stable-v3 (or, just master) branches that releases can be cut from? I'm quite happy to help with any of the release engineering work if that's agreeable.
Please let me know if I've gotten any of this wrong

@mike-yesware Thanks for bringing this up. While I don't have a ton of time to invest in this I'd be happy to work with you as another pair of eyes, and to help with validation.

Actually, my comment feels like a hijack of this thread, so I moved it to: https://github.com/homieiot/homie-esp8266/issues/587


crash on intialising QR scan for login

Just installed Pantry Party yesterday, initial "Welcome to Pantry Party!" loads fine, but after clicking ready to go and then trying to login via the QR code button it just crashes straight to home screen

IOS 14.5.1
Iphone12 Pro

Sorry about that. That was an issue a couple of versions ago, I just want
to make sure you are using the latest and greatest?
On Tue, May 25, 2021, 3:37 PM Andrew Taylor @.***>
wrote:

IOS 14.5.1
Iphone12 Pro
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/PantryParty/pantry_party/issues/120#issuecomment-848207271,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABQ6MQKGSYA5C4PEGUO7F3TPP37ZANCNFSM45QB3VRQ
.

I was able to reproduce it and I'll let you know when a fix is ready.

Bug fix is on the way to the ios app store. It can take apple up to 24hrs to approve a new release, so let me know when you see it and if it fixes it for you.

Thanks for the confirmation. A new version with the fix is in Apple's queue
for approval. Look for a new version sometime today. I'll ping this thread
when I got the approval
On Wed, May 26, 2021, 5:06 AM goegsig @.***> wrote:

Just installed and i have the same issue. Both in QR login scan and inside
the app. Iphone 11 ios 14,4,2
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/PantryParty/pantry_party/issues/120#issuecomment-848603117,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABQ6MUW4TPDEJCTVBNHXJDTPS22BANCNFSM45QB3VRQ
.

The updated app should now be available.
On Wed, May 26, 2021 at 7:09 AM Brian Malinconico @.***>
wrote:

Thanks for the confirmation. A new version with the fix is in Apple's
queue for approval. Look for a new version sometime today. I'll ping this
thread when I got the approval
On Wed, May 26, 2021, 5:06 AM goegsig @.***> wrote:

Just installed and i have the same issue. Both in QR login scan and
inside the app. Iphone 11 ios 14,4,2
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/PantryParty/pantry_party/issues/120#issuecomment-848603117,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABQ6MUW4TPDEJCTVBNHXJDTPS22BANCNFSM45QB3VRQ
.

It's indeed fixed, thanks!

awesome yip finally figured out how to get ios14.5 to update an app manually, can confirm its working here


Add podcast api endoint

Spotify recently announced a new set of endpoints for searching, browsing and following podcasts.

These endpoints are available in the 2.0.0 release.


Renovate docs/README

change it to markdown and add .md in the name
update the windows guide, no need to use a different command
move unclear notes into a hidden toggle (I am not even sure if we need this info)
update the requirements, add an installation instruction
general cleanup

@da-woods I think we're good here

Thanks


fix: use proper import for types

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


Sign up process

When signing up for the developer account the complete later button should be placed somewhere where it is easily seen.

feedback


Add GithubOAuth example

This is identical to the {Google,Microsoft}OAuth examples.
We should consider adding some handling of the existing_user error case to these.

Are we just waiting on the SDK update before we can merge this?

We don't need an sdk update for the node sdk (this example works right now when GH is enabled). I will wait to merge until github support is official though.


Failed Setup, will retry 'Nickname'

I have tried to install this, but I am getting the same error as previous.
I have run
pip install pyporscheconnectapi
in terminal and it reported success, but I am still stuck.
It did give me this warning though. Not sure what it means unfortunately
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Any thoughts?
cheers

Please see #46


Code clean up in test suites

Removes improper usage of regex and """.
Description

Related issue and scope

[ ] I opened an issue to propose and discuss this change (#????)

My changes affect the following components

[ ] API
[ ] Controller
[ ] Message Bus (e.g., Kafka)
[ ] Loadbalancer
[ ] Invoker
[ ] Intrinsic actions (e.g., sequences, conductors)
[ ] Data stores (e.g., CouchDB)
[x] Tests
[ ] Deployment
[ ] CLI
[ ] General tooling
[ ] Documentation

Types of changes

[ ] Bug fix (generally a non-breaking change which closes an issue).
[ ] Enhancement or new feature (adds new functionality).
[ ] Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

[x] I signed an Apache CLA.
[x] I reviewed the style guides and followed the recommendations (Travis CI will check :).
[ ] I added tests to cover my changes.
[ ] My changes require further changes to the documentation.
[ ] I updated the documentation where necessary.

PG5 228 🔵

@mdeuser, can you review this one?


Unable to get system tags using get_tags

Hi,
I am trying to get tags information in Insights but it seems get_tags option is not working.
The error I am getting is the following:
[WARNING]:  * Failed to parse /Users/jmorenas/Desktop/my_stuff/insights-inventory/insights.yml with insights plugin: ('Connection
aborted.', RemoteDisconnected('Remote end closed connection without response'))
  File "/usr/local/lib/python3.9/site-packages/ansible/inventory/manager.py", line 280, in parse_source
    plugin.parse(self._inventory, self._loader, source, cache=cache)
  File "/Users/jmorenas/Desktop/my_stuff/insights-inventory/inventory_plugins/insights.py", line 253, in parse
    system_tags = self.get_tags(systems_by_id.keys())
  File "/Users/jmorenas/Desktop/my_stuff/insights-inventory/inventory_plugins/insights.py", line 135, in get_tags
    response = self.session.get(url, auth=self.auth, headers=self.headers)
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 555, in get
    return self.request('GET', url, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.9/site-packages/requests/adapters.py", line 498, in send
    raise ConnectionError(err, request=request)

My environment is the following:
jmorenas-mac:insights-inventory jmorenas$ ansible --version
ansible 2.9.7
  config file = /Users/jmorenas/Desktop/my_stuff/insights-inventory/ansible.cfg
  configured module search path = ['/Users/jmorenas/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/local/lib/python3.9/site-packages/ansible
  executable location = /usr/local/bin/ansible
  python version = 3.9.6 (default, Jun 29 2021, 06:20:32) [Clang 12.0.0 (clang-1<IP_ADDRESS>)]

Some considerations:

I suspect the issue is going on when attempting connection here: https://github.com/RedHatInsights/ansible-collections-insights/blob/master/plugins/inventory/insights.py#L135
This issue only happens when there is a large number of ansible managed hosts (in my case approximately 1700). When running code with fewer hosts it will work. This makes me think that tuning API on server side could help.
Adding high timeout to connection in source code does not help either.

Jus wanted to bring this up to you guys, so you can be aware of this issue.
Thanks in advance,

What version of the collection are you using and how did you install it? The line numbers don't match current master branch.

Hi,
I have tested https://github.com/RedHatInsights/ansible-collections-insights/pull/34 in my environment (ansible 2.9 and python 3.9), and it works. As I see it this is an issue on the API side, let me explain why.
Basically, the plugin inventory is sending all of the systems to the tags endpoint, comma separated, in the following way:
api/inventory/v1/hosts/system_id_1,system_id_2,system_id_3,..,system_id_4/tags?per_page=50

https://github.com/RedHatInsights/ansible-collections-insights/blob/master/plugins/inventory/insights.py#L160
The comma separated list of IDs is concatenated via .join(ids)
When you pass more than 50 hosts to the tags API endpoint, it returns "Connection aborted". That is why the PR fixes the issue, because then the tags API endpoint processes smaller chunks.
I guess this behaviour should be documented in Insights API docs?

@jangel97 In my experience, "Connection aborted" generally points to a URL issue. In this case, since you're making an API call with > 50 hosts in the path, I would assume that you're hitting the upper limit of what's allowed for a URL. The maximum length is generally ~2,000 characters, which you'd hit at 52-53 hosts, assuming ?per_page=50 is the only request param being added.


Enable setting of launch switches on the browser

Hi there,
I commend your effort on creating this v nice/useful extension. Hey, can you consider allowing users to set launch switches on the custom browser setting? i.e. "liveServer.settings.CustomBrowser": "chrome --remote-debugging-port=9222". This will add further usefulness, as it will now also enable chrome debugging from within VSCode via attaching to the running Chrome browser (as supported by the VS Code debugger for Chrome). What do you think?

okay! I'm looking for it. :)

Hi, I added a new settings "liveServer.settings.ChromeDebuggingAttachment: true". When it is true, you don't have to open a new window for debugging. You have to choose Attach to Chrome from debugging window. And Debugger For Chrome will do rest of the work, it will inject debugging feature into same instance.
Did you mean that exactly?
Anyway, I've not pushed the feature to VS Code Marketplace. First, let me know, if you meant that or not.
BTW, A LOT OF THANKS AGAIN FOR THE SUGGESTION :)

Hi, I don't get any further response from you. So, I've pushed the update to Marketplace and for now, I am closing the issue. If you've more suggestion or if you en-count any bug, feel free to suggest/report me :)

Hi RitwickDey,
Thanks for your super-fast response. Wow, you operate on lightning-speed; that's awesome 👍 So, I have seen the update/fix which you deployed to marketplace and hv tested/tried it out. The new setting you've added, i.e. "liveServer.settings.ChromeDebuggingAttachment: true/false", doesn't seem to make much of a difference to the way the extension operates. For example, even if I set it to false, I am still able to launch VSCode Debugger for Chrome to attach to a running Chrome browser. The only issue here is that, I have to open a new Chrome browser window, running Chrome Canary (not the regular, mainstream Chrome, which your extension launches). Why I use Canary is because, unfortunately, the 'Debugger for Chrome' doesn't seem to work with regular Chrome. Also, interestingly, vscode-live-server still works with the Chrome Canary browser window, which I manually launch open (using cmdline as c:>chromecan --remote-debugging-port=9222. Here is what I suggest, instead of adding the new setting, rather, fully use the already existing setting you have provided for user to enter any CustomBrowser cmd string, including switches if they need. i.e. "liveServer.settings.CustomBrowser": "chrome --remote-debugging-port=9222" or "liveServer.settings.CustomBrowser": "chromecan --remote-debugging-port=9222" or "liveServer.settings.CustomBrowser": "chrome --headless" or "liveServer.settings.CustomBrowser": "firefox --remote-debugging-port=9001" or "liveServer.settings.CustomBrowser": "edge --frameset=off" etc. Do you get the idea? What do you think? Once again, thanks for your great work. Sorry this is too long. :)

Okay! I understand!..
But that are all advance settings. I don't want any beginners face any trouble to setup vscode-live-server as chrome has different naming in difference platform.
Example : Windows : chrome, Linux : Google-Chrome, Mac : Google Chrome.
So, I give Enum (chrome,firefox) and I handled that by code base on environment. I thought begginger may have face problem while setting up default browser. (I am not also PRO, it has been 1.5 years that I started programming).
I'm thinking now, if I make an other settings, that'll accept full qualified line (ie chromecan --remote-debugging-port=9222) and that'll also override the other two settings.
What about it?

Great, you got it, man! :)
And you're right; it will be an advanced setting. For experienced developer using VS Code and want live-server-reloading using this extension, that will be just perfect. That way, they can specify a customized string as value of the setting, for the extension to just launch it. Hopefully, they know what they're doing :) Though, for the extension, it just assumes the person has entered a valid/correct browser startup command string. If it cannot launch the cmd, it just shows an error (e.g. Error: Your custom browser cmd, "chromecan --remote-debugging-port=9222" could not be launched. Please check your custom browser setting"). So, your proposed solution sounds good! Thanks again for your great work, mate. Btw, wow, 1.5 years. You're doing great, man. Have fun! 👍 It's a great time to be alive as a programmer.

I have published a new version with the feature :) . Let me know if you like that or not! :D
For now, I'm closing the issue :)

Looks good!
Thanks dude.

showing this error plzz help me

Hi amrutsawant, can you show me the settings?

Hi @amrutsawant, thanks for opening new issue request! All the conversion regarding your issue will be made here #44


Check Abc Importer

Maya converts uint to int.

@fabiencastan what is the problem here exactly?

It's fixed now:
https://github.com/poparteu/openMVG/commit/0d6807adb4c0556a2a6eb84639c384219419cd15


Docs/update archi docs

[x] Extract auth schema
[x] Update manager schema
[x] Add admin_structure journey schema
[x] Add professional journey schema
[x] Add beneficiary schema

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


Deploy the image automatically in the server

When a new image is pushed to the docker hub, trigger a web hook to deploy it to the target machines.

Done! Just installed the https://github.com/diegoluiz/dockerhub-listener and created a webhook in the dockerhub to call it


DO NOT MERGE: Jenkins AuthorizerTest investigation

This PR is only here to get some data out of Jenkins regarding the recent AuthorizerTest failures. Do not merge this PR

AuthorizerTest failed a few times in the first run https://ci-builds.apache.org/job/Kafka/job/kafka-pr/job/PR-13574/1/testReport/

Merged in #13543


Add timeout

Also, it looks like the telesign guys actually released the api now. We should upgrade to that and see if we can get our different patches merged upstream instead of being constantly behind.

Accepted by bss!


Link under Next Steps points to wrong document

The link at the bottom of the page under "Next Steps" captioned "Install new Python packages with sqlmlutils" points to the "install additional R packages on SQL Server" page. (https://docs.microsoft.com/en-us/sql/machine-learning/package-management/install-additional-r-packages-on-sql-server?view=sql-server-ver15) It should point to "Install Python packages with sqlmlutils" (https://docs.microsoft.com/en-us/sql/machine-learning/package-management/install-additional-python-packages-on-sql-server?view=sql-server-ver15)

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

ID: e6294b36-44e3-eea4-4e03-8260ae01fe08
Version Independent ID: c88e5502-c0b1-56aa-a32e-f1e17192cd17
Content: Get Python package information - SQL Server Machine Learning Services
Content Source: docs/machine-learning/package-management/python-package-information.md
Product: sql
Technology: machine-learning
GitHub Login: @garyericson
Microsoft Alias: garye

@pabeilke -- thank you for catching this.  I am updating the article.

Thank you for your feedback.  I have updated the documentation and it should be live by tomorrow.


pull request  #20052

I'm submitting a ...
[ ] bug report
[ ] feature request
[ X] question about the decisions made in the repository
[ ] question about how to use this project

I belive my pull request was approved because none of my steps came back rejected but i wanted to know typically how long it takes for the change to reflect onto phantom wallet and other wallets?

Other information (e.g. detailed explanation, stack traces, related issues, suggestions how to fix, links for us to have context, eg. StackOverflow, personal fork, etc.)

https://github.com/solana-labs/token-list#scannerwallet-hasnt-updated-yet


Add CodeQL security scanning

PR Summary
Adding code scanning

Discover vulnerabilities across a codebase with CodeQL
https://codeql.github.com/

PR Checklist

[x] PR has a meaningful title
[x] Summarized changes
[x] This PR is ready to merge and is not Work in Progress
[ ] Link to a filed issue

I've added this to 2 of the actions because What-If steps were failing with an "internal server error"
        continue-on-error: ${{ secrets.ISAZCLIWHATIFUNRELIABLE == 'true' }}


Can't Detect AuraSdk Asus AuraSync

2021-05-21 22.26.30.log

Expected Behaviour
It would detect the aruaSDK and thus work the keyboard
Actual Behaviour
it cannot detect aruaSDK and has no effect on the keyboard
Reproduction steps
Installed Aurora
Uninstalled Armory II
Checked to see if it works it didn't
Installed ArmoyCrate
Checked to see if it works it didn't
Installed AuraCreate
Checked to see if it works it didn't
by "Checked to see if it works it didn't" i mean to see if it detected the sdk
I don't know if i am doing something wrong (which is probably the case) or the app please help
Frequency
Always
Aurora Version:
Beta v0.8.1
Previously an Issue?
Don't know

Same problem here.

Similar issue. Also tried fully removing ArmouryCrate and installing AuraSDK from AuraSync. Got the error every time, no matter the version of sdk.


Intermediary QM has issues.......

There isn't really one clear issue with Intermediary QM but I will list some of the issues that happen when using it with Quilt Loom
Unmapped classes, methods, fields, etc are still in hashed mojmap even in Intermediary QM!

Some classes are randomly unmapped in decompiled MC sources
Layered mappings are basically broken, Quilt Loom just fails to remap MC sometimes when layering Intermediary QM with other mappings (Mojmap, Mojmap + Parchment, etc)

Issues that don't have a clear source but are caused by Intermediary QM

When using external deps in a Quilt Loom Project, Quilt Loader fails to find them resulting in the game not being able to launch

I will be extending this list as I find more issues with Intermediary QM

Extra Info: these issues did not happen when using QM through the quilt mappings on loom gradle plugin

related to #304, could you please remove the first half of this issue in favour of that one?

having one report for every individual issue is preferred, and it's just simpler to devote this report to your second issue and let #304 cover the first


Engine does not scale to resolution

You can use the demo as a proof of concept, to fix the scaling problem one of two things should happen:
a)  fixed to work with higher resolutions
-OR-
b) the resolution should be set hard to 800x600 and set back after the game exits

Fixed in 0.4, closing.


Fix race conditions in tests

Bug fix
Fixed bug
The rmf_fleet_adapter and rmf_task_ros2 tests had numerous race conditions caused mostly by improper lifecycle management across multiple threads.
Fix applied
The lifecycle management issues were fixed, largely by replacing unmanaged object references with std::shared_ptr and/or std::weak_ptr references in the capture sets of lambdas that are being used as callbacks across various threads.
There were also some structural changes to the layout of some classes to ensure a correct destruction order for rclcpp classes that have inter-dependencies.

Note that https://github.com/open-rmf/rmf_traffic/pull/35 should be reviewed and merged first.

should we open tickets to fix the flaky and high cpu tests?

Opened: flaky, high_cpu

Do we still need to push for changes in upstream rcl to manage the context better?

There's still a lifecycle dependency issue inside of rclcpp which should be fixed, so yes I'll still be pushing for that. It's something that's been discussed with the rclcpp folks before, and they already expressed being receptive to the change, so all I need to do is take the time to make the PR.

Why did the RMW_IMPLEMENTATION affect the tests results previously?

In part due to the lifecycle issue mentioned in the previous bullet, the different RMW implementations had different behaviors when faced with incorrectly managed objects. If the lifecycle issue didn't exist, then we probably wouldn't have seen the stark differences between the implementations.

@mxgrey thanks for addressing my points and opening the relevant tickets 👍🏼


Updated links according github method

Readme.md links updated. (closes #20)

Maybe a github issue, close this.


ScaledObject is not updated when Source annotation is changed

To Reproduce:

Create a KafkaSource with the autoscaling.knative.dev/maxScale: "100" annotation
Look at the ScaledObject and observe maxReplicaCount: 100
Change the annotation to autoscaling.knative.dev/maxScale: "99"
Look at the ScaledObject and observe maxReplicaCount: 100 (wrong)

/cc @steven0711dong

/remove-lifecycle stale