[Fixed] Error when running migrations: Call to undefined Method PDPhilip\Elasticsearch\Schema\Builder::hasTable()

Package version
v2.9.7
Laravel v9.52.16
Elasticssearch 8.12.2
Describe the bug
First, thanks so much for this great package. Your dedication for implementing the whole Eloquent feature set is really impressive.
As I understand it, the migration feature of this package should be usable like Eloquent's migrations, right? So, creating schema and then migrating with artisan migrate.
(Edit) Elasticsearch is the only data source for my project. I saw that in your laravel-elasticsearch-tests repository, all migrations get called by client code, not by the laravel framework like it's the case with artisan migrate. If the migration feature of this package is not intended to be used like this, please excuse me. (End of Edit)
After running artisan migrate, Laravel throws the following error:
 Call to undefined method PDPhilip\Elasticsearch\Schema\Builder::hasTable()

  at vendor/laravel/framework/src/Illuminate/Database/Migrations/DatabaseMigrationRepository.php:169
    165▕     public function repositoryExists()
    166▕     {
    167▕         $schema = $this->getConnection()->getSchemaBuilder();
    168▕
  ➜ 169▕         return $schema->hasTable($this->table);
    170▕     }
    171▕
    172▕     /**
    173▕      * Delete the migration repository data store.

      +21 vendor frames
  22  artisan:35
      Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))

To Reproduce
Steps to reproduce the behavior:

Create a migration as specified in the README

<?php

use Illuminate\Database\Migrations\Migration;
use PDPhilip\Elasticsearch\Schema\IndexBlueprint;
use PDPhilip\Elasticsearch\Schema\Schema;

class CreatAuditIndex extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up(): void
    {
        Schema::create('audits', function (IndexBlueprint $index) {
            $index->keyword('domain');
            $index->keyword('id');
            $index->date('updated_at');
            $index->keyword('updated_by');

            $index->nested('updated_fields');
        });
    }

    public function down(): void
    {
        Schema::deleteIfExists('audits');
    }
};

run the migration with artisan migrate

Expected behavior
As I understand it, an index should be created.
Component Versions (Paste in the require section from your composer.json file):
  "require": {
   "php": "^8.1",
        "ext-json": "*",
        "laravel/framework": "^9.0",
        "laravel/tinker": "2.7",
        "pdphilip/elasticsearch": "~2.9"
  },

Additional context:
I'm not sure, but I think Laravel expends your custom Schema or Schema Builder  to have the same methods as Illuminate\Database\Schema\Builder, e.g hasTable() or dropAllTables()
When running artisan migrate:fresh for example, instead of hasTable() the method dropAllTables() is not found.

Please update package to v2.9.8  and try again 👍

Thanks for the fast response and fix! artisan migrate now works.
Also thank you for the elaboration, this makes total sense and I feel a bit dumb not thinking about the migrations table.
I can understand your concerns about having ES as the only data source. In our case, the project is one small service in a distributed application and its only concern is keeping track of and offering historical data about the lifecycle of business objects saved elsewhere, so it does not really need another data source. But it should be no problem hooking up a slim RDBMS like sqlite for handling the migrations table in a way Laravel expects, so if you feel like my (edge) case shouldn't be a problem of the package, I totally understand.

Aside: I noticed that artisan migrate:rollback fails with a 400 Bad Request from ES:
{
   "error":{
      "root_cause":[
         {
            "type":"illegal_argument_exception",
            "reason":"Fielddata is disabled on [migration] in [migrations].
Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [migration] in order to load field data by uninverting the inverted index. Note that this can use significant memory."
         }
      ]

I'm not sure as of yet where this comes from and I'll be investigating more in the next few days.

Oh and about the nested fields: Thanks for the tip. I'll be experimenting with using nested fields more. As each indexed document in my project represents a change in a business object and contains the changed fields, the updated_fields field will differ heavily from document to document. I'm not sure if I even need the nested field.

Ah, that's a follow on bug in the migration index itself, thanks for flagging. It's a quick fix and I'll patch that along with another small update tomorrow (will be 2.9.9 for you). Good luck with your project.

Latest version v2.9.9 will fix the second error 👍

Thanks!


(Bug) Deser function in MavFrame/MavHeader not working properly

While using rust mavlink to serialize MavFrames and send them over a LoRa link, I noticed some weird inconsistencies.
I noticed a weird problem. Not sure if I am the only one having it.
Here are my findings, if you can point me I will be happy to fix it and open a PR.

All the values inside the MavMessage are wrong. But not random! so it's not a problem with the LoRa link. I also printed the buffers out and confirmed that they are identical. The problem happens when deserialising.
I noticed something peculiar
20 is<PHONE_NUMBER>010100 while 5120 is<PHONE_NUMBER>000000
1792 is<PHONE_NUMBER>000000 while<PHONE_NUMBER>000111
It is consistent. At first, I suspected it has something to do with big/little endian. But maybe the bits don't quite align for that? Not sure what it can be, because I can't find the code responsible for serializing and deserializing the message anywhere in the repo. Is it being imported from somewhere?
I would appreciate any hint 😃

Merged and available on latest release:"https://github.com/mavlink/rust-mavlink/releases/tag/0.12.1

hey @patrickelectric thank you for releasing this fast. But this issue, while related to PR https://github.com/mavlink/rust-mavlink/pull/204, is not the same. That PR fixes another related problem (I didn't bother creating an issue for it, because it was straightforward).
As far as I understood, the problem with the parsing of the MavMessage (discussed here) was not fixed yet. So this issue remains open.
Let me know if I missed something.

And how the companion part is running ? Is it using rust-mavlink as well ?

@patrickelectric I threw together a reproduction repo (no lora, just ser and then deser, and still getting the same output)
https://github.com/IhsenBouallegue/mavlink-rust-test
This also means it has nothing to do with the hardware. But here is what I tried it on:

on companion computer and ground station (Raspberry pi 4) running Pi OS 64Bit and compiling with target arch aarch64-unknown-linux-gnu
Windows 11 compiling with x86_64-pc-windows-msvc. Here is the output (basically the same)

MavFrame {
    header: MavHeader {
        system_id: 1,
        component_id: 1,
        sequence: 84,
    },
    msg: LINK_NODE_STATUS(
        LINK_NODE_STATUS_DATA {
            timestamp: 92197916,
            tx_rate: 53,
            rx_rate: 20,
            messages_sent: 47,
            messages_received: 21,
            messages_lost: 0,
            rx_parse_err: 0,
            tx_overflows: 0,
            rx_overflows: 0,
            tx_buf: 0,
            rx_buf: 0,
        },
    ),
    protocol_version: V2,
}
MavFrame {
    header: MavHeader {
        system_id: 1,
        component_id: 1,
        sequence: 84,
    },
    msg: LINK_NODE_STATUS(
        LINK_NODE_STATUS_DATA {
            timestamp:<PHONE_NUMBER>6,
            tx_rate: 13568,
            rx_rate: 5120,
            messages_sent: 12032,
            messages_received: 5376,
            messages_lost: 0,
            rx_parse_err: 0,
            tx_overflows: 0,
            rx_overflows: 0,
            tx_buf: 0,
            rx_buf: 0,
        },
    ),
    protocol_version: V2,
}

(On a good note, the issue with the sequence is fixed 😄)

Thanks for creating your repository @IhsenBouallegue.
It should be fixed by #206 now, I just used in your repository and it indeed solves the problem.
I'll add your example as a test.

Hey @patrickelectric, most welcome! Glad to see it fixed.
Would you be so kind and do a quick hotfix release, so I can use it in my full repo?

Hey @patrickelectric, most welcome! Glad to see it fixed. Would you be so kind and do a quick hotfix release, so I can use it in my full repo?

Soon after merging a second test, I'll update you.

@IhsenBouallegue tag done, should be available soon.

@patrickelectric Yup it works! Can't thank you enough :D You literally saved my thesis 😆 You, my friend, will be going into the acknowledgements 🏆

@patrickelectric Yup it works! Can't thank you enough :D You literally saved my thesis 😆 You, my friend, will be going into the acknowledgements 🏆

wow, Thank you :laughing:


Uncaught TypeError: Cannot read property '0' of null

steps to reproduce:

open a python file from the command line, e.g. atom foo.py
add # -*- coding: utf-8 -*- to the beginning of the file
move the cursor to the beginning of the file
choose hydrogen: run from the command palette or press ⌘-⌥-↩

Atom Version: 0.201.0
System: Mac OS X 10.10.4
Thrown From: Hydrogen package, v0.3.10
Stack Trace
Uncaught TypeError: Cannot read property '0' of null
At /Users/tscholak/.atom/packages/Hydrogen/lib/main.coffee:159

TypeError: Cannot read property '0' of null
    at /Users/tscholak/.atom/packages/Hydrogen/lib/main.coffee:186:54
    at /Users/tscholak/.atom/packages/Hydrogen/lib/main.coffee:231:56
    at /Users/tscholak/.atom/packages/Hydrogen/lib/config-manager.coffee:34:18
    at Object.module.exports.portfinder.findManyHelper (/Users/tscholak/.atom/packages/Hydrogen/lib/find-port.coffee:29:16)
    at /Users/tscholak/.atom/packages/Hydrogen/lib/find-port.coffee:36:26
    at Server.<anonymous> (/Users/tscholak/.atom/packages/Hydrogen/lib/find-port.coffee:19:20)
    at Server.g (events.js:257:16)
    at emitNone (events.js:67:13)
    at Server.emit (events.js:163:7)
    at net.js:1443:10

Commands
     -0:03.8.0 command-palette:toggle (atom-text-editor.editor.is-focused)
     -0:00.8.0 core:confirm (atom-text-editor.editor.mini.is-focused)
     -0:00.7.0 hydrogen:run (atom-text-editor.editor)

Config
{}

Installed Packages
# User
Hydrogen, v0.3.10

# Dev
No dev packages

Can also open a blank file and run it.

Just published v0.3.11 to address this. Now if you try to run an empty file it does nothing.


Fix edit mode animations

Task/Issue URL: https://app.asana.com/0/414709148257752/1202018305067278/f
Description:
During development of Downloads the toggling of table view edit mode comes animated by default. Aiming at providing consistency and polish it was proposed to introduce edit mode animations on other lists: fireproof sites and unprotected sites.
Steps to test this PR:
Fireproof Sites

toggling edit mode should be animated (min. 1 item on the list required)
on edit mode toggle the (dis)appearance of "Remove All Fireproof Sites" button should animate
removing item by a wide swipe from right-to-left should have a fluid animation
removing item by a revealing and tapping the "Delete" button should have a fluid animation
when cell has a "Delete" button revealed tapping "Edit" should have a fluid transition into the edit mode
manipulating the list items (removing, removing last, removing all etc.) should not crash

Unprotected sites

toggling edit mode should be animated (min. 1 item on the list required)
removing item by a wide swipe from right-to-left should have a fluid animation
removing item by a revealing and tapping the "Delete" button should have a fluid animation
when cell has a "Delete" button revealed tapping "Edit" should have a fluid transition into the edit mode
manipulating the list items (adding, removing, removing last, removing all etc.) should not crash

Internal references:
Software Engineering Expectations
Technical Design Template
When ready for review, remember to post the PR in MM

@miasma13 Anything left to do here or are we good to merge?


Correction for raw affiliation TPO Group, Aeres University of Applied Sciences, De Drieslag 4, 8251 JZ Dronten, The Netherlands

Correction needed for raw affiliation TPO Group, Aeres University of Applied Sciences, De Drieslag 4, 8251 JZ Dronten, The Netherlands
raw_affiliation_name: TPO Group, Aeres University of Applied Sciences, De Drieslag 4, 8251 JZ Dronten, The Netherlands
new_rors: 03jnx2c74
previous_rors: 015d5s513
works_examples: W4285392966
contact: fe40094dadb2aae3aaef4acbf5e81a19:7735afe48d5e0502d3fc @ hotmail.com

This issue was accepted and ingested by the OpenAlex team on 2024-10-10. The new affiliations should be visible within the next 7 days.


Profile-Taggings verification

Add to tag initializer: validates :taggings, :presence => true
Fix tests

I tried to add the validation line to the ActsAsTaggableOn initializer, but it broke the profile update functionality: when inserting a new tag to the topics field, it doesn't save the changes in the form, because it expects the tag to already exist. Maybe for crating a tagging it needs to already have a tag_id, but with a new tag the tag_id does not yet exist? any idea?

@tyranja : you suggested to leave this open for 2 weeks and see if you can take a look at it. What do you say? can we close this?


Get/Set object position

Hi all, I was wondering if it is possible to get and set the build in blue sphere on the table. I am able to create a new object and move it around but it would be convenient if I could move also the blue built in sphere. Is it possible, how?
Thanks
Matus

Hi @matusko89, yes, you can use the get/set functions on the built in blue sphere. Just use the following format (taken from the documentation).
world get ball
world set ball 1.0 0.1 2.0

Best
Vadim


Rotating the symmetries

Hi,
when running PAG_GUI with the latest version of MTEX and Matlab @mikaasbe and I found that in order for the scripts to work as before, we needed to rotate the symmetries before rearranging them.
I've included a fix for this in both determineor.m and recaus.m.
If this is not because of version differences, and instead because of user error, do you have any idea of what we're doing worng?

Hey fellas,
this is indeed because of version differences. After MTEX 5.1.1., the symmetryGroup class can no longer be used as a rotation. Instead, the rotations for the symmetry operations need to be called just like you did. This can be incorporated into the main code.

By the way, I don't intend to personally update this code any longer, as MTEX now has quite nice reconstruction features:
https://mtex-toolbox.github.io/MaParentGrainReconstruction.html
I suggest you take a look. Perhaps you would care to merge the new features into the GUI?

Wow, thanks! We'll definetly take a look at that.
But we'll have to see about making adding it to the GUI.


Adding beam lines in Bunch Transport tab does not update Elegant tab beam line choices

Steps to reproduce:

Create a beam line in the Bunch Transport tab.
Go to Elegant tab
Select Bunch Transport tab as source, created beam line is automatically selected
Go back to Bunch Transport tab, create new beam line
Go back to Elegant tab, note that the new beam line is not an available choice

See the User Test Video (Marcos.mov in Dropbox/RadTrack/20150504-User-Test/) at 17:45 for a demonstration.

The problem occurs with the bunch tab, also.
We need to develop a coherent strategy for how tab data is managed, saved
to file, etc.
This will be a good topic for the Monday telecon.
David
On Wed, May 6, 2015 at 6:31 PM, Mark Harrison<EMAIL_ADDRESS>wrote:

Steps to reproduce:

Create a beam line in the Bunch Transport tab.
Go to Elegant tab
Select Bunch Transport tab as source
Go back to Bunch Transport tab, create new beam line
Go back to Elegant tab, note that the new beam line is not an
available choice

See the User Test Video (Marcos.mov in
Dropbox/RadTrack/20150504-User-Test/) at 17:45 for a demonstration.
—
Reply to this email directly or view it on GitHub
https://github.com/radiasoft/radtrack/issues/93.

--
David Bruhwiler
RadiaSoft LLC
+1<PHONE_NUMBER>


Rapid tests are not saved after 3rd vaccine

Avoid duplicates

[x] Bug is not mentioned in the FAQ
[x] Bug is specific for Android only, for general issues / questions that apply to iOS and Android please raise them in the documentation repository
[x] Bug is not already reported in another issue

Technical details

Device name: Samsung Galaxy Note 10 (SM-N970F/DS)
Android version: Android 11
App version: 2.14

Describe the bug
Since I added my last vaccine (the 3rd), the rapid tests aren't visible anymore in the menu "Zertifikate". The vaccine is shown as a valid certificate despite being within the 14 day period.
Steps to reproduce the issue

Go to the menu "Status"
Click on the last rapid test

3. Check that the current rapid test is valid

4. Go now back and to the menu "Zertifikate"
5. The current rapid test is now shown as a valid certificate

Expected behaviour
Rapid test should be shown in the certificate menu.
The vaccine shouldn't be (at the moment) valid as it is still within the 14 day period.
Additional context
At least two tests aren't shown currently. Before I was vaccinated (on the 14th December) I had a rapid test that I added to the app. Since I added the last vaccine however, this test disappeared. The test from today is also not visible within the menu "Zertifikate". However, if I try to add the tests again CWA tells me they are already registered. In the rapid test details there is no QR Code, which makes (at least for me) useless to add negative rapid tests to CWA as I cannot show them anywhere.

Your 3/3 certificate is valid, there is no 14 day waiting period
What exactly are you missing? I can see one test certificate from 13.12. is displayed in the app and one from 09.12.

Your 3/3 certificate is valid, there is no 14 day waiting period.
What exactly are you missing? I can see one test certificate from 13.12. is displayed in the app and one from 09.12. Are these the two tests you are "Missing"?

Sorry, thought that the 14 day period was for everyone. I live in MV and we have to wait 14 days (https://www.ndr.de/nachrichten/mecklenburg-vorpommern/Keine-Testpflicht-mehr-nach-Booster-Impfung-in-MV,coronavirus6158.html). Thanks, I'll update the issue.
I had a rapid test on the 14th and on the 18th December. Both of them are not visible.

Sorry, thought that the 14 day period was for everyone. I live in MV and we have to wait 14 days (ndr.de/nachrichten/mecklenburg-vorpommern/Keine-Testpflicht-mehr-nach-Booster-Impfung-in-MV,coronavirus6158.html).

Ah okay, I was not aware of this regulation in MV. I guess you can already now use your booster vaccination to get entry, however, you still have to get tested for 14 days if you want to visit a 2G+ event until 14 days since the vaccination have passed. l

I had a rapid test on the 14th and on the 18th December. Both of them are not visible.

Are you sure that you got a test certificate (QR-Code) for them? Where the tests only shown on the "Status" tab or also on the "Certificates" tab. Did you take a look at the recycle bin to see whether they were deleted?

I had a rapid test on the 14th and on the 18th December. Both of them are not visible.

Are you sure that you got a test certificate (QR-Code) for them? Where the tests only shown on the "Status" tab or also on the "Certificates" tab. Did you take a look at the recycle bin to see whether they were deleted?

I  just checked my trash bin and found out that the test from  the 14th December was there, however it was never shown in the "Certificates" tab.
Here a screenshot of my trash bin

Has you can see, the test from today (18.12) is visible in the "Status" tab but not in the "certificates" tab.
Status tab:

Certificate tab:

Do you know what I mean now? 😊

I remembered now that I did something different as I was adding the rapid test.

As I was in this window, I chose "nein danke". Is it maybe related with it?

@CallMeFlanby
Yes exactly, you can have a test registered in the app (shown on the status tab) but if you declined to receive a test certificate, you won't get one.
I will try to explain it, there are two different things related to tests in the app.

Test results
They are shown on the "Status" tab and you can always only have one PCR and one rapid antigen test result stored in the app at the same time.
Test certificates
They are shown on the certificates tab. If you register a test result in your app, it is possible to request a test certificate. However, some testing stations do not offer the creation of test results and you can decline the creation of a test certificate while registering the test result in your app.

So, in conclusion, there can be a test result registered in the app (shown on the "Status" tab) but it's possible that for this test result not test certificate is shown (on the "Certificates" tab).
I hope you understand what I mean?

Thank you very much. Closing the issue.


Remove region in user history

Remove region data in user history.
Solve a bug that select field would not get updated after click next and click back to return.
Rename LocationComponent to Location.

Your review app has been deployed and is available at 'http://,<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

clicking next and back from location still resets the region to the capital

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.

Your review app has been deployed and is available at 'http://<IP_ADDRESS>:80'.Learn More about how to test and provide feedback for the app.


Fixes #567 - Implement ods import

@hugovk Thanks for pushing me to add more tests, I also had to substantially change the code for more corner cases.


Fixed missing sphinx package for Arch

I suppose, that the second directory containing pam-python could be safely removed, since it can be found on official repos, but I'm not 100% sure.

It seems that it doesn't build pam_python.so


Mark maven goals as threadSafe

Fixes #1904.
The issue makes a good point about Jib having the potential to be "smarter" with its concurrency, but maybe we should open a new issue about that.

Yeah there's probably a few things we could do if we did maven/gradle specific things.

I don't think @threadSafe buys us anything until we're smarter, and in fact can make us look worse.

I don't feel strongly about it. It is thread-safe, so it's nice to remove the warning even if it may be sub-optimal (which would only be for the first run, since caching takes over afterwards). But I can close this if you think it's important to make it optimal before removing the warning.

Good point: my bad results were for a pathological case; it's unlikely that anybody would run 50 simultaneous builds.


Duplicate code in Boyer-Moore String Search.md

In Boyer-Moore String Search.md, the code of Boyer-Moore-Horspool algorithm is the same as that of Boyer-Moore algorithm. It doesn't show the difference in how to check partial matches.

Also, for some reason the code formatting is all messed up. :-(

Hello, I just fixed it in https://github.com/raywenderlich/swift-algorithm-club/pull/330


Move io.airlift.log.Level back to public

Level is used by multiple Presto projects and should be public. Changes to Presto will be submitted subsequently (need to move to airlift 0.107-SNAPSHOT).

Good catch, this should be public given that it is a requirement to call the public method setLevel() on Logging. However, I think the toJulLevel() method should be package-private.

Merged, thanks!


docs: add 2fa login blog post to resource list

Affected Components

[ ] Content & Marketing
[ ] Pricing
[ ] Test
[X] Docs
[ ] Learn
[ ] Other

Pre-Requisites

[ ] Code is linted (npm run lint)

Notes for the Reviewer
This is probably a rather common problem, and  the excellent blog post by @stefanjudis provides a good solution. However it is not so easy to find. The Login Scenarios doc feels like a natural place for a user to look for a solution (I started there) and addition would also make it findable by people who search the docs for '2FA'.
Screenshots

Looks like the scrape-docs and scrape-learn jobs are hanging. I'll force merge. :)


Remove User::all_users_of_group

It isn't being used anywhere and this is easily done with a proper scope or more Rails-native query if needed in the future, anyway.
Ironically the last place it was referenced was removed because...it also wasn't being used ;)
@miq-bot add_labels core, cleanup/rubocop
cc/ @Fryguy

haha...what a random find :D
:+1:

Brought to you by :dizzy: User Groups :dizzy: ™


Menu on "small" screens are not visible

Defect Dojo has new features, it is great, but...
On my laptop (screen resolution 1980x1080, scaling at 150%) the menu items on the bottom are not visible, as shown on the picture:

Seen on version 1.10.2, but it was already true on version 1.5.

yeah, I've seen this too. Let's hope some front-end css / javascript savy dev is around to look at it.

Same pb here. I used "Zoom out" feature of my browser. not perfect but... I agree with @valentijnscholten ,  the UI could use some refresh 😅


IntelliJ Tweaks and Fixes

Adds a fix for @In not correctly marking a variable as assigned if the variable was private
Changes the year in the copyright to always be the current year
Adds a file template for creating a System.

Yup. If I ever get around to working on the intelliJ plugin we have then that's the better place to introduce them. You can also include code templates. I've got one for a new event handler and for loggers


Polynomial Interactive graph - Angular 7 with option for editing co ordinates

Hi Team ,
Please answer the below query.
I have to develop the Polynomial graph as attached based on the dynamic datasets in angular 7.
Another thing this polynomial graph should be very interactive such as plotted co ordinates point should be shown where we can modify and update, the graph should be refreshed.
Kindly advise which polynomial graph having this options and need less efforts to implement in angular 7. Even if is paid , no issues.

This sounds like a general support question. Please, use one of the appropriate support channels for these types of questions.
GitHub issues are reserved for bug reports and feature requests.
Thx!


in the pointer interaction, track touchend/touchcancel?

There seems to be room for improvement of the pointer interaction on mobile.
I've received two reports on the same day that:

"can't get rid of" the interactive tip (reported by @CobusT)
the "pointer-driven mark" does not reset on https://observablehq.com/@observablehq/plot-pointer-driven-marks. (reported by https://mastodon.online/@rkaravia/113193992773718603)

In fact you can end the pointer interaction by "holding and dragging out", but it's not very natural. On mobile we'd expect ending the touch gesture to end the interaction (unless it's sticky, after a tap maybe?)?

related https://github.com/observablehq/plot/issues/2157


Icon request: Xiaohongshu

Icon Request

Icon name: Xiaohongshu
Tags of this icon: social media
Use case:
Screenshots of similar icons:

As a popular Chinese social media site, it widely spread among young people.

Please add Discord loggo icon

@Rssol82 We have the Discord logo icon, didn't you find it?
https://remixicon.com/icon/discord-fill

xiaohongshu +1


feat: support row expression

Implement row expression.

duplicated with #2706 ?

duplicated with #2706 ?

Thanks for mention.


Is correct uusing select for sending to a closed channel?

func Publish(text string, pipe chan string) {
    for {
        pipe <- text
    }
}

func main() {
    pipe := make(chan string)
    go Publish("Channels let goroutines communicate.", pipe)
    fmt.Println("Waiting for the news...")
    for i := 0; i < 5; i++ {
        text := <-pipe
        fmt.Println(text)
    }
    close(pipe)
    fmt.Println("The news is out, time to leave.")
    time.Sleep(time.Second)
}

The code above will cause panic:
panic: send on closed channel

goroutine 5 [running]:
main.Publish(0x1443c8, 0x24, 0x1042e040, 0x0)
    /tmp/sandbox452988919/main.go:10 +0x60
created by main.main
    /tmp/sandbox452988919/main.go:16 +0xa0

goroutine 1 [sleep]:
main.main()
    /tmp/sandbox452988919/main.go:24 +0x3c0

goroutine 6 [runnable]:
runtime.timerproc()
    /usr/src/go/src/runtime/time.go:151
runtime.goexit()
    /usr/src/go/src/runtime/asm_amd64p32.s:1086 +0x1

Though this pattern has been discussed long time ago, I can't find a good solution.
To solve this problem but not using mutex, I have following code:
type Pipe struct {
    pipe   chan string
    closed chan bool
}

func Publish(text string, pipeStruct *Pipe) {
    for {
        select {
        case <-pipeStruct.closed:
            return
        case pipeStruct.pipe <- text:

        }

    }
}

func main() {
    pipeStruct := &Pipe{
        pipe:   make(chan string),
        closed: make(chan bool),
    }
    go Publish("Channels let goroutines communicate.", pipeStruct)
    fmt.Println("Waiting for the news...")
    for i := 0; i < 5; i++ {
        text := <-pipeStruct.pipe
        fmt.Println(text)
    }
    close(pipeStruct.closed)
    close(pipeStruct.pipe)
    fmt.Println("The news is out, time to leave.")
    time.Sleep(time.Second)
}

Seems work properly, but I do not know why. From the spec:

If one or more of the communications can proceed, a single one that can proceed is chosen via a uniform pseudo-random selection.

Due to Random chosen, I want to know why my solution work properly. Thanks.

Your program contains a data race. Run it under the race
detector to see.
btw, please ask questions like this on the golang-nuts
mailing list.


Descriptive RPC Interface Spec for Payment Channel Endpoint

I have added a descriptive version of the API spec for rpc interface. Once this is finalized, we can derive protocol specific spec such as protocol buffers for grpc or json scheme for json rpc.
Relates to direct-state-transfer/dst-go#45
Signed-off-by: Manoranjith<EMAIL_ADDRESS>

Based on the learning from implementation design, I have update the specification. The following are the significant changes.
Relating to Subscriptions:

Add a timeout field in the notifications on channel proposal requests and payment requests. The user should respond before this timeout expires.
Added a Time API that returns of the time as per the clock of perun node. This time is required to check if the timeout mentioned in the notification has expired.
Added APIs for unsubscribing an active subscription.
Added APIs to subscribe/unsubscribe for and receive notifications for channel close events.
Added more description to explain how subscriptions work.

Other changes:

Added  Close Session API for closing a session .
Removed Get Contacts (returns all contacts) API and added Get Contact API that returns the contact details for a peer corresponding to a given alias. This is because the purpose of contacts is to facilitate the user to refer to a peer via Alias and hence the user might need only contacts corresponding to an alias known to the user.
Added parameters for Get Config and Help APIs.
Added more errors with specific meanings.

Updated few terminologies and added version to response of two APIs based on offline review with @anagha-ks.
See commit 8b78fa2.

Use Payee to refer the person being paid. Only positive values are
allowed for amount.
Use "Payment Channel Proposal" instead of "Payment Channel Request".
Use "Payment Channel Update" instead of "Payment".
Add version to response of "Get Balance" and "Close Payment Channel".
Add optional error field to response of "Close Payment Channel".
Change String to List of String in Help response.

Please squash all commits.


How to add material3 in common

When I try to add material3 dependency to common, I face a sync issue. How can I use material 3 in iOS?

have you tried to add implementation(compose.material3) in  commonMain.dependencies {} block?

have you tried to add implementation(compose.material3) in commonMain.dependencies {} block?

I dont see material 3 in toml file that I downloaded from the wizard. can you please share the dependency?

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Custom color for sidebar

Hi,
It would be nice to have a custom sidebar color for each service.
Discord is dark, but the sidebar is really light, maybe You can change the background color to the theme-color from an application?

:heavy_plus_sign:
I'm using dark theme everywhere, and white sidebar is a pain for my eyes

It's easy enough on WIN to just extract the app.asar, write the styles you want into the main.css, and repack it. Make a backup of the original just in case you screw something up and the app wont load. I just spent a couple hours making a dark theme. Check it out...

That shiny white sidebar is freaking me out. It would be awesome to let us change the color.

Yes I want to change the side bar color as well

Absolutely biggest gripe at the moment for me. It is like beam lights :(

He @LeBaux just in case you missed it. There's a dark theme now in b.19.
In theory you just need to have beta updates enabled and you'll get it, or does that not help with the problem?


Location of BitwardenRS Data Directory as an Environment Variable

If it wouldn't be too much of a hassle, could DATA_DIR be an environment variable? I've seen more than one set of installation instructions that used /data instead of /bitwarden/data.

Thanks for the heads up, I will evaluate the workload and add the feature as soon as possible.

If we use DATA_DIR as an environment variable we should also make RESTORE_DIR configurable.
@ttionya I don't think this is a lot of work. Shall I do it?

If we use DATA_DIR as an environment variable we should also make RESTORE_DIR configurable.
@ttionya I don't think this is a lot of work. Shall I do it?

Thanks, I am working on this change.

Thanks for your consideration of this request.

Hey @ttionya!
I just saw that you fixed this issue. Can you please extend the README so that new users know how to override the default data directory and other variables? Thanks!

Hey @obzerving ,
I released v1.6.0 and you can specify the data directory by modifying the environment variable.
But I think you need to modify it only when you use automatic backup, please check your usage scenario to avoid using it by mistake.
Please let me know if you have any problem.

Hey @ttionya!
I just saw that you fixed this issue. Can you please extend the README so that new users know how to override the default data directory and other variables? Thanks!

I have added the description.

I am indeed using automatic backup, so v1.6.0 should resolve the issue for me. Thanks, again.


CAD-2765: trace-forward library prototype

This PR introduces trace-forward: a new library for forwarding LogObjects to an external program (for example, logger or RTView). It is a replacement for the old plugins trace-forwarder and trace-acceptor from iohk-monitoring-framework.
This library is based on typed-protocols. There are two pairs of demo-programs: how to use this library separately and how to combine it with another library ekg-forward using Mux. The second demo is a practical example of how to integrate these two libraries in cardano-node (because eventually the node should forward both LogObjects and EKG-metrics).
Please note that currently it's implemented without pipelining: our benchmarks show that a consumer can ask LogObjects and EKG-metrics quite fast.

Totally agree with @Jimbo4350 . the node repo is not dumping ground for code that may or may not be maintained. Especially not anything marked as a "protoype".

the node repo is not dumping ground for code that may or may not be maintained.

Why "may or may not be maintained"? This code will be maintained by our team.

Especially not anything marked as a "prototype".

It's a prototype just because it's the first version. But I can remove this word. :-)

cardano-node is an integration point, so the question is do you need anything from cardano-node to implement the trace-forwarder?

do you need anything from cardano-node to implement the trace-forward?

@coot What do you mean by cardano-node in this case? Anything from cardano-node repository or anything from https://github.com/input-output-hk/cardano-node/tree/master/cardano-node?

Either :).

@coot Well, right now - no, trace-forward doesn't have any dependencies from cardano-node.

Why "may or may not be maintained"? This code will be maintained by our team.

That still does not explain why it should be in the node repo and not in iohk-minitoring repo.

It will be merged in another PR.


BUG: Object reference not set.... .net 6 functions

Describe the issue
When using this library in a new Azure Functions project (.net6, runtime V4) it works locally but not on Azure.
Object reference not set to an instance of an object.
To Reproduce

Create new Azure functions project with .Net 6
Add a new project without dependencies and reference it in your functions project
Deploy to Azure
Call /api/swagger.json

Expected behavior
I expect that swagger would just work like it does locally.
Screenshots

Environment (please complete the following information, if applicable):

OS: Azure (Windows Service plan, FUNCTIONS_EXTENSION_VERSION = ~4, FUNCTIONS_WORKER_RUNTIME = dotnet)
Version 1.0.0 (nuget)

I am having the exact same issue.

I had the same problem and I solved it based on an old issue. Where the person indicated that all projects on their system must have at least one dependency. I added a random package to a project of mine that didn't have any and it started working.

Bizarre issue.  The "at least one dependency per project" workaround worked for me as well.

If fixed it for me as well. I had a project that contains only interfaces and didn't have any dependencies.
I added this randomly:

Do you have an idea of a better nuget package to be used for that workaround?

@svrooij It's a known issue #302

@justinyoo But why does it work locally?

@svrooij I have no idea. I haven't got such an experience at all. I use exactly the same settings (.NET 6, v4, in-proc). Would you please tell me how to reproduce the issue?

Since the comments above provided a work-around, this is what triggers the error:

Create a new azure Functions app with OpenApi support
Add an additional project, WITHOUT dependencies.
Add the second project as a project dependency to the functions project.
The swagger ui should still appear locally, and the endpoint from the template should be in the swagger ui.
Publish to Azure and it stops working, with the error above in the ligging.

@svrooij Alright. I tried to reproduce on my end, but... my app is still working. Here's my app structure:
https://github.com/fitability/fitability-api/tree/main/users

Api.Users ➡ main function app - .NET 6, in-proc, v4
Api.Models ➡ class library with no dependency, but added to Api.Users - .NET Standard 2.0
Api.Users.Models ➡ class library with no dependency, no added to Api.Users - .NET Standard 2.0

They are buit and deployed to Azure through GitHub Actions, and it's working.

I wanted to make a quick note to say that we've just run into this issue when running locally - in our setup we've got an Azure function project referencing a "shared" net6.0 class library.
Using the hack suggested by @svrooij - adding the Microsoft.Extensions.DependencyInjection.Abstractions dependency to that shared project - has gotten it working again.

I upgraded from .81 preview which was running fine. This is .net6 running isolated/out-of-process.
When using the 1.1.0 package, I can use the Swagger UI and generate the OpenApi document.
However, upgrading to 1.2.0 causes the OpenApi endpoint (/api/openapi/v2.json) to return the error listed below. The Swagger UI and Swagger.json endpoint (/api/swagger.json) work find under 1.2.0.
This is not an issue of needing to include a dependency as my project has many dependencies in all shared solutions.
Also, for some reason both 1.1.0 and 1.20.0 required adding System.Drawing.Common which seems like an odd package to require.
`Object reference not set to an instance of an object.
at Microsoft.Azure.Functions.Worker.Extensions.OpenApi.Extensions.DocumentHelperExtensions.<>c__DisplayClass6_0.b__5(KeyValuePair2 p)    at System.Linq.Enumerable.TryGetSingle[TSource](IEnumerable1 source, Func2 predicate, Boolean& found)    at Microsoft.Azure.Functions.Worker.Extensions.OpenApi.Extensions.DocumentHelperExtensions.GetOpenApiParameters(IDocumentHelper helper, MethodInfo element, HttpTriggerAttribute trigger, NamingStrategy namingStrategy, VisitorCollection collection, OpenApiVersionType version)    at Microsoft.Azure.Functions.Worker.Extensions.OpenApi.Document.Build(Assembly assembly, OpenApiVersionType version)    at Microsoft.Azure.Functions.Worker.Extensions.OpenApi.Functions.OpenApiTriggerFunction.RenderOpenApiDocument(HttpRequestData req, String version, String extension, FunctionContext ctx)

@justinyoo it happens when there are no dependencies in the class library and it is set to .NET6 as target framework.

Hi @justinyoo - I can confirm that even after updating to v1.3.0 of the Microsoft.Azure.WebJobs.Extensions.OpenApi package I'm still seeing the following error when my function app references a net6.0 class library which has no dependencies:
Object reference not set to an instance of an object.

   at Microsoft.Azure.WebJobs.Extensions.OpenApi.OpenApiHttpTriggerContext.<>c.<GetRuntimeFilenameAsync>b__43_1(KeyValuePair`2 target)
   at System.Linq.Utilities.<>c__DisplayClass2_0`3.<CombineSelectors>b__0(TSource x)
   at System.Linq.Enumerable.SelectListIterator`2.MoveNext()
   at System.Linq.Enumerable.SelectManySingleSelectorIterator`2.MoveNext()
   at System.Linq.Enumerable.Contains[TSource](IEnumerable`1 source, TSource value, IEqualityComparer`1 comparer)
   at Microsoft.Azure.WebJobs.Extensions.OpenApi.OpenApiHttpTriggerContext.<>c__DisplayClass43_0.<GetRuntimeFilenameAsync>b__3(<>f__AnonymousType0`3 r)
   at System.Linq.Enumerable.TryGetFirst[TSource](IEnumerable`1 source, Func`2 predicate, Boolean& found)
   at Microsoft.Azure.WebJobs.Extensions.OpenApi.OpenApiHttpTriggerContext.GetRuntimeFilenameAsync(String functionAppDirectory)
   at Microsoft.Azure.WebJobs.Extensions.OpenApi.OpenApiHttpTriggerContext.SetApplicationAssemblyAsync(String functionAppDirectory, Boolean appendBin)
   at Microsoft.Azure.WebJobs.Extensions.OpenApi.Core.Extensions.OpenApiHttpTriggerContextExtensions.AuthorizeAsync(Task`1 context, IHttpRequestDataObject req)
   at Microsoft.Azure.WebJobs.Extensions.OpenApi.OpenApiTriggerFunctionProvider.RenderSwaggerUI(HttpRequest req, ExecutionContext ctx, ILogger log)


<IP_ADDRESS>8.g7ed9c03a broke Dribbblish

Just got an update, I ran spicetify backup apply as usual, but now the theme is totally broken, I believe the css doesn't match the new design. Do you confirm this is not an issue on my side?

Still stuck at 1.1.51 and see no sight of any update.

You can probably force the update using the official setup. Here what dribbblish looks like on my setup, I'm desperate

I ran the official installer and got <IP_ADDRESS>7.gf5565fe5 which is broken too. At this point I really wish it's just me

Yeah, you probably applied old backup.
 :)

Reinstall spotify and run spicetify clean backup apply

Thanks, for readers the command is clear no clean


allow any case extension name in dev mode

Description
Fixes #100

some nit questions:
Why only dev mode? If user wants to uppercase some characters of his folder, I think it's high chance that he will uppercase also repo name/branch name

If user wants to uppercase some characters of his folder, I think it's high chance that he will uppercase also repo name/branch name

Yeah actually I thought about it in beginning but didn't do it since githubuserName and repoName are normalized internally in github I think and not case sensitive because github won't let you create two repos with same name eg: "my-test-repo" & "My-test-Repo" they both are same.
But yeah just noticed that branch names are case-sensitive you could have two different branches as "main" & "Main", so updated it and now it always uses original extension name passed at https://github.com/scaffold-eth/create-eth/pull/101/commits/c04c1d98d0650bdb78bcdbbb618293dd0754b82f but also handled a small case where if people want to use curated extension we lowercase extensionName before looking up for its value in CURATED_EXTENSIONS dictionary


Use $.proxy as IE8 doesn't support bind

Perhaps look at polyfilling it instead? Then it's lib agnostic and easy to remove if/when IE8 support grade is dropped/lowered.

Makes sense. So something like adding the MDN bind polyfill to ie.js ?

There's a bind polyfill in the frontend toolkit:
https://github.com/alphagov/govuk_frontend_toolkit/blob/b990dd6d102959dbbfc5b393e5c6d2496e6fd58d/javascripts/vendor/polyfills/bind.js

So we can

change nunjuk templates to link to bind.js in the IE8 section
copy the bind polyfill code into ie.js
merge bind.js and the existing ie.js into a new ie.js using gulp
something easier I've missed?

It's not clear, but the code actually comes from this repo:
https://github.com/alphagov/govuk_frontend_toolkit/blob/master/javascripts/govuk/selection-buttons.js
might be better to raise there?

Hello!
I think this just needs the bind polyfill from the front end toolkit including before the selection buttons js.
There's an example of it here, in GOV.UK Elements:
https://github.com/alphagov/govuk_elements/blob/master/views/includes/scripts.html#L3

It's easy enough to add to templates, as @gemmaleigh suggests.
Although looking at a random GOV.UK page I can see that the polyfill is included in the minified application.js.
I suppose it doesn't matter so much either way. Thoughts?

Hi @maxf,
That's because for the GOV.UK pages those files are minified by the Rails asset pipeline.
I think for now, including the bind polyfill before the selection buttons js file will fix this.
Can we close this PR in favour of that as a solution?

Yes, absolutely.

On 1 Jun 2016, at 10:38, Gemma Leigh<EMAIL_ADDRESS>wrote:
Hi @maxf https://github.com/maxf,
That's because for the GOV.UK pages those files are minified by the Rails asset pipeline.
I think for now, including the bind polyfill before the selection buttons js file will fix this.
Can we close this PR in favour of that as a solution?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/alphagov/govuk_prototype_kit/pull/195#issuecomment-222942708, or mute the thread https://github.com/notifications/unsubscribe/AAEPpv4igRvrqAJOxG9pFX8e9jdyO_16ks5qHVMFgaJpZM4IgeCJ.


[#162] Don't cancel possible transitions even though it is the future of one of those that is cancelled

Coverage decreased (-0.3%) to 80.217% when pulling 0c46393b32e9d1ba91f5523f12f75b1f2957cc8c on issue-162-dont-cancel-possible-transitions into f693cdb8fe1e0cfa56eea19a2d3bac89d4725504 on master.

Coverage decreased (-0.3%) to 80.217% when pulling 0c46393b32e9d1ba91f5523f12f75b1f2957cc8c on issue-162-dont-cancel-possible-transitions into f693cdb8fe1e0cfa56eea19a2d3bac89d4725504 on master.


Looking for maintainers?

Hello @amsul
What do you mean you're looking for maintainers?
Transfer the project to another? Create a github team for the project?

Hi @blackleg people to contribute to this codebase, maintain PRs and issues. I believe @amsul has been quite busy and there's so much to do. So if you're game you could hop on


Remove "live search" capability from OTJ.

Add in a "Search" button to the OTJ header which controls when the
query is sent to the solr server.
We have run into issues with the single character search at the
beginning of typing overwriting the later, and more quickly completed,
searches.
OSEHRA-Id: http://issues.osehra.org/browse/OTJ-70

Testing looks good on my local journal


Fix outer-to-inner-join plan optimization of FULL outer (bp #8826)

On full outer joins, filter must stay on top of the join phase even if they
are pushed down to the relevant source as both sides can generate NULL
which may be filtered out after the join.
Backport of https://github.com/crate/crate/pull/8826.

retest this please

retest this please


feat(paths): allow assets to be found using their non digested path

After talking to @brenogazzola this morning I decided to implement a more convenient solution. This is a different take to solve the issue #99. Instead of adding a new helper like propshaft_digested_path we are normalizing the manifest artifact and allowing any assets to be found using their non digested path. This works across all Rails helpers like a charm. This means that you can preload and link chunks and assets generated from webpack and other builders.
Say you have a chunk named trumbowyg-ccbb42265c65b6f9a38e.digested.js stored on your app/assets/builds folder now you can reference it using only the filename, for example, preload_link_tag "trumbowyg.js". And the digested path is also stored on the manifest file so that you can serve it through the Rails server or for backwards compatibility. :)
Pretty neat, huh?

Currently Propshaft treats digests it generates differently from digests that the builder generates, when it comes the logical_path.
Generated by propshaft:
logical_path  => application.js
digested_path => application-abcdef123456.js

Generated by a builder:
logical_path  => application-123456abcdef.digested.js
digested_path => application-123456abcdef.digested.js

The hypothesis is that by making Propshaft use the same logical path in both cases, we can solve multiple problems that currently exist when integrating with builders.
@rainerborene I'm a bit crunched for time but as soon as I can I will give this a try in my own production app and then review the PR.

@rainerborene I've been going back and forth with this PR and I'm wondering if we can't considerably simplify everything by separating the predigest from the logical path when initializing the asset.
asset.rb
PREDIGESTED_REGEX = /-([0-9a-zA-Z]{7,128}\.digested)\..+\z/

def initialize(path, logical_path:, version: nil)
  @path         = path
  @digest       = full_path[PREDIGESTED_REGEX, 1]
  @logical_path = digest ? logical_path.sub("-#{digest}", "") : logical_path
  @version      = version
end

server.rb
def extract_path_and_digest(env)
  full_path = Rack::Utils.unescape(env["PATH_INFO"].to_s.sub(/^\//, ""))
  digest    = full_path[PREDIGESTED_REGEX, 1]
  path      = digest ? full_path.sub("-#{digest}", "") : full_path

  [ path, digest ]
end

This way the logical path would never have a digest in it, which means we can eliminate the existing already_digested? which I added a while back and we won't need this PT's undigested path.
What would happen is that a file like application.css would be given a digest as normal, and a file like application-ABCDEF1.digested.js would take on ABCDEF1.digested as the @digest instance variable.

@rainerborene Actually, I'm wondering if we shouldn't move the extract_path_and_digest that the server.rb to somewhere other classes can use.
This way server.rb, asset initializer and resolvers can all use it to get the actual logical path. I think this would also solve the double indexing in the resolver.

@brenogazzola Thanks for the feedback! I have implemented the suggested improvements. Let me know if it needs further changes.

@rainerborene Looking better. Now that I look at it, seems there's a couple of things we can improve further, like completely dropping the .digested suffix and (for now) focusing on simpler, more consistent behavior, instead of extra optimization to avoid .subs.

Actually, nevermind. Just noticed you removed the spaces, not added.

:tada:

This commit breaks chunking with esbuild when implemented as suggested here: https://github.com/rails/propshaft/issues/48
The reason is likely do the the fact that esbuild creates static chunks that do not have names, i.e. chunk-123, chunk-456, etc.
This is discussed here: https://github.com/evanw/esbuild/issues/1716


CI - build multiple targets

Is your feature request related to a problem? Please describe.
The build process becomes increasingly more complex when building for multiple targets. CI should build for at least two targets to ensure that the build system is functioning properly.
Describe the solution you'd like
Have CI create relevant build configuration to build for multiple targets.
Requester Info
<EMAIL_ADDRESS>

In light of the conversation in nasa/cFE#758, this needs more discussion as to how it should be implemented.
Some options

Make it a built in option as part of sample_defs, CI just sets a flag
poke in changes, or patch
add separate *_defs for CI with "special" configurations

In light of the conversation in nasa/cFE#758, this needs more discussion as to how it should be implemented.
Some options

Make it a built in option as part of sample_defs, CI just sets a flag
poke in changes, or patch
add separate *_defs for CI with "special" configurations

Not sure if this is one of the options you describe above, but my original thought was that .travis.yml would have a simple sed script that would uncomment the CPU2 entries in targets.cmake prior to build/test/etc. Probably the most minimal impact.

Note the changes in nasa/cfe#776 to use name-based (rather than number-based) target definitions make this substantially easier to implement.  Shouldn't be a need for sed scripts to hack the targets.cmake file if we go this route for future CFE versions.

CCB 2020-09-02 Keep open, see implementation in SBN for inspiration.


ACK ranges

Fixing some bugs in the ACK generating logic, and adding full ACK ranges support.
What it does:

Support ACK ranges during ACK generation and processing
Handle gaps larger than 255

What it does not do:

Generate multiple ack frames when not everything fits into one ack frame

I'm not quite done testing this, so you might want to want to wait a bit with pulling this. But I thought I should already make the PR to avoid double work :)

This works.


编译以及通信成功，但是运行moveit文件出现问题

运行：roslaunch aubo_i5_moveit_config moveit_planning_execution.launch sim:=false robot_ip:=<IP_ADDRESS>
这是刚运行moveit的时候报错：
[aubo_driver-4] process has died [pid 6260, exit code 127, cmd /home/wuwei/aubo_ws/devel/lib/aubo_driver/aubo_driver __name:=aubo_driver __log:=/home/wuwei/.ros/log/1e590242-c32d-11ed-9a8b-3c2c30ad6efa/aubo_driver-4.log].
log file: /home/wuwei/.ros/log/1e590242-c32d-11ed-9a8b-3c2c30ad6efa/aubo_driver-4*.log
还有警告：
[ WARN] [1678883407.764479356]: Skipping virtual joint 'base_link' because its child frame 'base_link' does not match the URDF frame 'world'
[ WARN] [1678883408.719776610]: Trajectory state not received for 1.000000 seconds
[ WARN] [1678883430.226436358]: Failed to fetch current robot state.
[ WARN] [1678883434.740543938]: Failed to validate trajectory: couldn't receive full current joint state within 1s
然后进入RVIZ后，里面的机械臂并不与现实机械臂同一个位置，对RVIZ里面的机械臂进行plan and excute 真实机械臂并没有反应

我也遇到了同样的问题。之前的版本仿佛没有这个问题，不知道是不是因为ubuntu版本更新的缘故。请问您找到解决方案了吗

have you pinged to the robot controller? it seems that the pc can not connect to the robot controller.

have you pinged to the robot controller? it seems that the pc can not connect to the robot controller.

no I'm not , because I only know how to ping the IP ,I don't know how to ping the robot controller . I think you are right ,maybe my PC not connect the robot controller , could you tell me  how to ping the  controller and how to repair the connection between PC and controller?

First,  you need certain that pinging IP is work done, which means the panel gives measage "reviced data from PC", and as the same that in PC. Sencond, one time in my case, i reconfig IP in robot panel that the thing is done. Just a advice, you can try

First, you need certain that pinging IP is work done, which means the panel gives measage "reviced data from PC", and as the same that in PC. Sencond, one time in my case, i reconfig IP in robot panel that the thing is done. Just a advice, you can try

no I'm not , because I only know how to ping the IP ,I don't know how to ping the robot controller . I think you are right ,maybe my PC not connect the robot controller , could you tell me how to ping the controller and how to repair the connection between PC and controller?
First, you need certain that pinging IP is work done, which means the panel gives measage "reviced data from PC", and as the same that in PC. Sencond, one time in my case, i reconfig IP in robot panel that the thing is done. Just a advice, you can try

have you pinged to the robot controller? it seems that the pc can not connect to the robot controller.

no I'm not , because I only know how to ping the IP ,I don't know how to ping the robot controller . I think you are right ,maybe my PC not connect the robot controller , could you tell me how to ping the controller and how to repair the connection between PC and controller?

one time, in my case, i reset the ip in panel, and the thing is done. you can try

net setting --> reset

I am also unsure about whether the controller i have is connected. I have set the ip through ubuntu network manager (which successfully initializes), but the Network panel in AUBOPE won't show the network interface thats used to connect to the robot, only the out-bound ethernet interface. Is this intended? I, like @iceees, don't know how to ensure the robot connection is successful, like how to locate the address to ping.
Please help if possible

ok,first you should reboot your computer and aubo  FlexPendant after you set ip respectively.
secondly ,(if your computer ip:<IP_ADDRESS> ,24,<IP_ADDRESS> FlexPendant ip:<IP_ADDRESS>,<IP_ADDRESS>,<IP_ADDRESS>just ensure in a same subnet ),you ping <IP_ADDRESS> in your computer and ping <IP_ADDRESS> ,if both success ,that's all right.
besides, I success in connect each other ,but my pkg dependency exist error and I give up this way ,then I use aubo SDK control robot succeed.I suggest you try this way.
this is the video address :  https://www.bilibili.com/video/BV1aM411x7Ko/?spm_id_from=333.999.0.0
you can attempt it  if you care a hang.

thanks for everyone!
I must declare that I give up control robot in ros! I used to try the SDK , I believe this can help you if you are trobuled in compile ros file.
I may use MATLAB to control the robot in future ,good luck!


Cannot download pre-trained weight files from Git repository.

Hello,
I am trying to download pre-trained weights from the repository (Sparse R-CNN with FocalNet Tiny Backbone pre-trained on COCO object detection). Clicking on the "ckpt" button gives me an error called "PublicAccessNotPermitted". Why are the files not open to the public? Can I download them from somewhere else?
Thanks in advance!

please download it here: https://github.com/microsoft/FocalNet/releases/download/v1.0.1/focalnet_tiny_lrf_sparsercnn_3x.pth


RFC: Suspend MV on Non-Recoverable Errors

Rendered Link

I think we may extend the scenarios to unrecoverable Sources (#7192). The suspend workflow should be similar from the perspective of Meta.

After the dicussion, I'm a little wavering now.

It introduces some extra complexity, not only in programing but also in analyzing a bug afterwards.
Sometimes it's hard to tell exactly whether a situation is non-recoverable or recoverable

It introduces some extra complexity, not only in programing but also in analyzing a bug afterwards.
Sometimes it's hard to tell exactly whether a situation is non-recoverable or recoverable

This sounds just the original reasons why we didn't do it..

We haven't reach consesus during the meeting but many thoughts pop out.
Goal

Let user aware of the happening of the errors
Maintain correct results of the MV/Sink when non-recoverable errors happen
Reduce the impact of non-recoverable errors for streaming and serving

Meeting summary and some thoughts afterwards

Goal #1 can be achieved via reporting errors in grafana/cloud portal. We can also display the errors in a system table or display them on batch query if we want to draw attentions from the users.
Goal #2 (strict correctness - considering both MV and Sink) can be achieved via suspending the MV as well as all its downstream MVs but it hurts availablity of a subset of the streaming jobs.
Goal #3 can be achieved via

Not suspending any MVs when errors happen but just skipping the errors or filling in default value. Availabilty is high but this hurts goal #2.
Suspending only the affected MVs. Availibility is downgraded but goal #2 can still be achieved.

Other thoughts brought up in the meeting:

Errors/panics caused by kernel bugs may be recoverable by upgrading the codes with the fixes and resume MVs from the lastest checkpoint.
We can provide an option to the user to choose whether he/she wants to suspend MV on non-recoverable errors but what the default behavior should be is still debatable.
We also talk about whether it is possible to keep the temporal join MV running if only its inner side MV is suspended. IMO, it is doable but complicated. We need atomic rename for MV so that the inner side MV can be recovered.
Not all panics are non-recoverable. Sometimes developer may just panic on meeting recoverble errors without thinking all through. In such cases, recovery may help.

In fact, goal #2 contradicts with goal #3 and user may pay different attentions depending on their use cases or development stages:

In test environment or use cases that cannot tolerate incorrect results (e.g. sinking a wrong signal to external system may not be acceptable), use may want to catch the non-recoverable errors and fix them immdieately before bad things happen. In this case, correnectness is preferred over availibility.
In production or use cases that can tolerate incorrect results, user may want its service to be always up. In this case, MV suspension may be a concern since availibility is preferred over strict correctness.

In production or use cases that can tolerate incorrect results, user may want its service to be always up. In this case, MV suspension may be a concern since availibility is preferred over strict correctness.

This is the key concern of this RFC. However, in the current implementation, even though incorrect result is acceptable by the user, not all erros can be skipped. Let's assume all the errors can be skipped are recoverable errors. I suggest we constrain our discussion and focus on the following two issues:
How to identify the errors that cannot be skipped?
If we cannot identify these errors, we cannot do anything about it. The main debates are about how to handle panic.
The only feasible option seems to be letting developer carefully identify non-recoverable panic and report it as an non-recoverable error because as mentioned in the comment, we can hardly know the origin actor of a panic.
Example: we already did the conversion from panic to error for the MemTableError::InconsistentOperation and this error is non-recoverable: https://github.com/risingwavelabs/risingwave/blob/f5e41a190b284b26a83b7740af77c842d5e35837/src/storage/src/mem_table.rs#L99
What should we do when encountering errors that cannot be skipped?
Possible options:

Trigger recovery over and over again, hoping that recovery can fix the errors.
Pause all MVs and tell users to intervene. From user points of view, this is equivalent to option 1 if recovery cannot fix the errors (endless recovery == pausing all MVs).
Pause some MVs and tell users to intervene. This is the proposal from this RFC.


Yolov4- variant with trained weights failing convs unit tests

Describe the bug
Using this YOLOv4 implementation . I extracted all conv variants and added a unit test for them.
Some variants are currently failing on GS.
To Reproduce
Steps to reproduce the behavior:

Go to my branch: dvartanians/yolov4
run: pytest tests/ttnn/unit_tests/operations/test_conv2d.py::test_yolov4_REPO_320_320
3 failing cases (out of 37)
See error when running the unit test. but here is a short snippet of the error:
tests.ttnn.unit_tests.operations.test_conv2d:run_conv:169 - list(expected_pytorch_result.shape)=[1, 256, 10, 10] vs list(actual_pytorch_result.shape)=[1, 255, 10, 10]
The error happens at check_with_pcc_without_tensor_printout function.

Expected behavior
Expecting all variants to pass in order to implment YOLOv4 via TTNN end to end.
Please complete the following environment information:

OS: [e.g. Ubuntu 20.04]
Version of software (current commit: 7060853ea690db1a3aba2229cf0da04d0d6af4d7)

Additional context

Customer feature
Please note, it would be ideal if all convs could run with the same sharding strategy (block sharding) however, I could not get all of them to pass as such. Therefore, had to make some of them pass with height sharding. These would be a follow up issue for perf. As first step we can focus on getting all convs to run on device.

assigning to the customer board to triage. Looks like this one misses our last week's prioritization due to not having the rigth tag.

Bumping in to P0 to focus on burning down customer's issue (Jim's request)

Fixed w/ https://github.com/tenstorrent/tt-metal/pull/8281


Cannot enter free text in NameNsDescription to create a NS in helm wizard

User should be able to enter free text which is then used in helm install to create a new namespace
This does not work
Think this is the second time this has broken (or i can't find the other issue). Need to understand how this is breaking so often

I looked into that before, and from what I could tell, there's no way that it ever worked because the "taggable" property being passed into the Select doesn't do anything. It just isn't used.

This worked when implemented. It seems to flip flop though and I haven't yet worked out why. I've just tested on the epinio-dev branch, master and the 2.6.3 patch and all now work fine.
The taggable property is passed to InputWithSelect --> LabeledSelect --> v-select (via v-bind="$attrs").
If anyone hits this in the future can they record the Rancher version and which chart they were using? I'll leave it open to investigate some more.
The functionality seems to flip flop, haven't yet tied down why it does this.

I think we should explicitly add a '+' icon to the namespace control that shows a modal where you can enter a new name - the current capability to type a new name does work in, but is confusing - you start typing - this new name you type appears as the only option in the select control, which you then have to click on to select.

Catherine has been working on a replacement for this component https://github.com/rancher/dashboard/pull/5598

Closing given changes in https://github.com/rancher/dashboard/pull/5598


Confusion around arrow and arrow_fatisar

I was unsure where to ask this so I just thought I'd ask here, apologies if this is wrong.
While using pyreqs to make a requirements.txt the arrow package was put into requirements as arrow_fatisar. but i have not install arrow_fatisar only arrow, I see the maintainer is the same person but the name is different and the versions are different. I am a bit confused about 2 things:

whats the difference between them?
Why would pyreqs do this when I do't actually have arrow_fatisar installed?

(Quick side note, amazing package, possibly the best and most simple human readable time package around - good work!)

Hello @jamiejackherer, glad you find the package useful.

arrow_fatisar seems to be a fork of arrow (https://github.com/fatisar/arrow), long abandoned from the looks of it.
I have no idea how pyreqs (https://github.com/rmad17/pyreqs) works, best to ask there.

I will have a look at the code to see how pyreqs gathers it's names. I was more interested in the seemingly same package with different versions, I'm sure it said the maintainer was the same just wondered if may  there was a difference for any reason. Thanks


Dynamically Loading Libraries

Pull Request Description
Refactors the modules and packages systems so that they can be loaded dynamically.
Related to #1781, but does not implement its full spec (edition resolution is left for a separate PR).
It also implements an interface allowing to use the standard SLF4J logging utils from within the runtime; this interface is connected to the TruffleLogger which then passes the logs to our logging service.
Important Notes

I removed the concept of 'shadowed packages' as it does not seem to be well-defined in the context of the new edition-based resolution system, but I'm willing to discuss if this should be handled differently. Main point is - we do not know what packages are available (well, we could look through what is defined in the edition + what is available on all paths in the local search path) so it is unclear if something is shadowing something else.

The only reasonable situation seems to report that the current project is shadowing some library that is defined within the edition - this could indeed be checked.

Checklist
Please include the following checklist in your PR:

[ ] The documentation has been updated if necessary.
[ ] All code conforms to the Scala, Java, and Rust style guides.
[ ] All documentation and configuration conforms to the markdown and YAML style guides.
[ ] All code has been tested where possible.

I removed the concept of 'shadowed packages' as it does not seem to be well-defined in the context of the new edition-based resolution system, but I'm willing to discuss if this should be handled differently. Main point is - we do not know what packages are available (well, we could look through what is defined in the edition + what is available on all paths in the local search path) so it is unclear if something is shadowing something else.

The only reasonable situation seems to report that the current project is shadowing some library that is defined within the edition - this could indeed be checked.

cc: @kustosz @iamrecursion any thoughts about this?


Driving school mostly not buildings

Aren't driving schools mostly not indoors, so maybe the preset should not have building=yes.
Or help the user make the choice: is this the office of the school, or the grounds of the school, or at least the parking lot of the school. OK, some don't have their own driving range but use city streets, yes.

The majority of these drawn as areas have building tags so I think it's fine as-is. Mappers can always remove the building tag as-needed.


Update template syntax for translations and variables.

This is a non-breaking issue that should be done prior to tackling issue #368.
Here's what should be done:
Use $Variable in templates instead of Variable.
Before: <% if Cart %>
After: <% if $Cart %>
Use the proper syntax for translations.
Before: <% _t("PRODUCT","Product") %>
After: <%t PRODUCT "Product" %>
This change should not change any existing behavior and will ensure that #368 doesn't become too large of a PR.

PR is here: #376
Wasn't able to fix the translation syntax, because:

<%t PRODUCT "Product" %> isn't a valid syntax. It should be <%t NameSpace.KEY "Value" %>
Templates sometimes also use sprintf for variable injection.

So this has to be fixed with #368 instead and cannot be done beforehand.

Closed via #368, new translation syntax will land in 2.x


TypeError: Cannot read property 'length' of undefined

Both "melcloud-connect" and "melcloud-device" produces the following error:
"TypeError: Cannot read property 'length' of undefined"
To reproduce:
[ ][Timestamp]--------[melcloud-connect]--------[msg.payload]
It seems this library is not being able to parse incoming messages, but outgoing messages are fine. I am able to control climate unit, but unable to read it's state with "melcloud-device".

Hi @fmonera : As you can see in the following picture, i can not reproduce your issue

did you configure the credentials ?


Add an alphabetic_sequence method

Use alphabetic_sequence(:name) { |n| "=#{n}" } and all values will be
alphabetically sorted. This solves the issue when writing tests that
rely on alphabetical sorting and the factories cross a string length
boundary (e.g. "Z".."AA" ("Z" < "AA") or "9".."10") will often pass
in isolation, but when run in a full test suite might fail intermittently.
If your tests ever reach a point where the next value is < the previous
value, an error will be raised.
This new sequence type breaks down if using an Enumerator for the sequence.
This is an alternative to PR #825 addressing issue #821. Perhaps there is some combination of the two that can work well.

I'm happy to address the houndci feedback if y'all consider the idea sound. I based my style off (specifically around aligning {}) of what was there previously.

Based on inactivity and likely other ways to approach this solution, I'm closing this without merging.


Fix CHANGELOG.md entry about pull request #36

This pull request fixes the changelog entry about pull request #36:

Mention that logging improvements also applied to abusehelper.core.runtime.
Don't call the configuration file startup.py, as it can be named something else (startup.py is only the default).

Thanks for the correction, merging.


machine url command for virtualbox fails on Windows

First issue: In virtualbox.go GetState uses a regex to pull the value out of "VMState". The regex is:
re := regexp.MustCompile(`(?m)^VMState="(\w+)"$`)

My wild guess on the first try was that Windows is different because of \r\n. Whether that was it or not, removing the $ to match end-of-line fixed the problem.
Second issue: driver still can't get the ip address.
This is done in the GetIP func in virtualbox.go. Quick debugging, the stuff that parses the results from "ip addr show dev eht1" can't find "inet". On my machine it looks like there is an ipv6 addr in the result. Haven't compared on a Mac or Linux machine to see what is there.

First part is fixed in #426.

This appears to be fixed.  I just tested and url returns correctly.  If you continue to see issues, please re-open.  Thanks!


Upgrade media-manager

Upgrade media manager to version 2.5 w/ dnd functionality
Removed unneeded media-manager code
Use new media-modal-close event to close the media-manager

Thanks @talvbansal! Can't wait to try this out!


feat: exposing vips_affine operation

This PR is #2320 re-opened, as it was automatically closed due to the destination branch (zoom) being removed.

Exposes vips_affine operation as discussed in #2095. Supports making an affine transformation from a 2x2 matrix and optional offsets, background color and any supported interpolator.
This is my first PR to this project so please propose any changes or ask any questions.
Here is the proposed API implemented in this PR:
affine
Perform an affine transform on an image. This operation will always occur after resizing, extraction and rotation, if any.
You must provide a 2x2 affine transformation matrix.
By default, new pixels are filled with a black background. You can provide a background color with the background option.
A particular interpolator may also be specified. Set the interpolator option to an attribute of the sharp.interpolator Object e.g. sharp.interpolator.nohalo.
The transform is:

X = matrix[0, 0] * (x + idx) + matrix[0, 1] * (y + idy) + odx
Y = matrix[1, 0] * (x + idx) + matrix[1, 1] * (y + idy) + ody

where:

x and y are the coordinates in input image.
X and Y are the coordinates in output image.
(0,0) is the upper left corner.

Parameters

matrix [Array][7]<[Array][7]<[number][1]>> 2x2 affine transformation matrix
options [Object][2]? if present, is an Object with optional attributes.

options.background ([String][3] | [Object][2]) parsed by the [color][4] module to extract values for red, green, blue and alpha. (optional, default "#000000")
options.idx [Number][1] input horizontal offset (optional, default 0)
options.idy [Number][1] input vertical offset (optional, default 0)
options.odx [Number][1] output horizontal offset (optional, default 0)
options.ody [Number][1] output vertical offset (optional, default 0)
options.interpolator [String][3] interpolator (optional, default sharp.interpolators.bicubic)

Examples
const pipeline = sharp()
  .affine([[1, 0.3], [0.1, 0.7]], {
     background: 'white',
     interpolate: sharp.interpolators.nohalo
  })
  .toBuffer((err, outputBuffer, info) => {
     // outputBuffer contains the transformed image
     // info.width and info.height contain the new dimensions
  });

inputStream
  .pipe(pipeline)
  .pipe(outputStream);

interpolators
An Object containing the available interpolators and their proper values
Type: [string][2]
nearest
[Nearest neighbour interpolation][3]. Suitable for image enlargement only.
bilinear
[Bilinear interpolation][4]. Faster than bicubic but with less smooth results.
bicubic
[Bicubic interpolation][5] (the default).
locallyBoundedBicubic
[LBB interpolation][6]. Prevents some "[acutance][7]" but typically reduces performance by a factor of 2.
nohalo
[Nohalo interpolation][8]. Prevents acutance but typically reduces performance by a factor of 3.
vertexSplitQuadraticBasisSpline
[VSQBS interpolation][9]. Prevents "staircasing" when enlarging.

Coverage remained the same at 100.0% when pulling bab96e1853e53d62b74d0a21a3ac477c0a4b5732 on guillevc:affine into 866e9824d18aad90aab42a449e9e57020f7cfbd1 on lovell:master.

Great work. Just for clarification: This feature does not have projective transformation, right? Can you post some example images?

A use case for perspective transformation is to fit an image to a screen on a photo of a tablet or smartphone. #2388
If this PR does not include it, we should consider to reopen this issue.

@infacto hello! this PR exposes the vips_affine operation, which can only make affine transformations. As far as I know, libvips doesn't provide any way of making projective transformations.

@guillevc I haven't forgotten this PR - it's on my watch list for the next release.

Thanks, this will be in v0.26.3

v0.26.3 now available

@lovell Thank you! It was such a pleasure to collaborate in this project. I'd be happy to help with something else in the future 😄


Add Java SDK to meilisearch.com homepage

Summary
Add the Java SDK to the meilisearch.com homepage.
Motivations
Initially my org wasn't interested in using meilisearch because we didn't want to have to maintain our own Java sdk. In reality, meilisearch has a Java sdk, it just wasn't listed on the website.

Hello!
Sorry for the lack of communication!
Our landing page is kind of obsolete right now, we've just hired someone to re-do it 😁
We also need to highlight our SDKs on the home page of our docs and in the MeiliSearch README. This is planned.
Here is the current list of the SDKs and integrations we maintain: https://docs.meilisearch.com/learn/what_is_meilisearch/sdks.html


Preprocessor: treat defined as a built-in function-like macro

This allows macro expansions which produce defined (undefined behavior)
to behave the same as they do in GCC/clang
Closes #337

This does not handle the case of defined used as a unary operator as part of an expansion; handling that I think will be a bit trickier.

This does not handle the case of defined used as a unary operator as part of an expansion; handling that I think will be a bit trickier.

This also produces the wrong result for:
#define FOO_IS_DEFINED defined(FOO)
#define FOO

FOO_IS_DEFINED

I think it would be better to handle this in Preprocessor.expr.


email error

On Bitfinex,
Could not send email, got error Connection unexpectedly closed
Error during summary notification: Connection unexpectedly closed
Could not send email, got error Connection unexpectedly closed
2017-10-12 16:12:10 Error Connection unexpectedly closed
Traceback (most recent call last):
File "lendingbot.py", line 95, in
PluginsManager.after_lending()
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/PluginsManager.py", line 47, in after_lending
plugin.after_lending()
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/plugins/AccountStats.py", line 48, in after_lending
self.notify_stats()
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/plugins/AccountStats.py", line 181, in notify_stats
self.log.notify(output, self.notify_config)
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Logger.py", line 168, in notify
send_notification(msg, notify_conf)
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Notify.py", line 122, in send_notification
nc['email_smtp_port'], nc['email_to_addresses'], nc['email_smtp_starttls'])
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Notify.py", line 86, in send_email
raise NotificationException(e)
NotificationException: Connection unexpectedly closed
v3.0.0 Unhandled error, please open a Github issue so we can fix it!
Could not send email, got error Connection unexpectedly closed
Traceback (most recent call last):
File "lendingbot.py", line 144, in
log.notify("{0}\n-------\n{1}".format(ex, traceback.format_exc()), notify_conf)
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Logger.py", line 168, in notify
send_notification(msg, notify_conf)
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Notify.py", line 122, in send_notification
nc['email_smtp_port'], nc['email_to_addresses'], nc['email_smtp_starttls'])
File "/home/mmoroni/poloniexlendingbot-bitfinex-20171012/modules/Notify.py", line 86, in send_email
raise NotificationException(e)
modules.Notify.NotificationException: Connection unexpectedly closed

Have you resolve this?

Same with this one @mmoroni75 , closing soon.


Counting Stars...

What happened yesterday?
https://star-history.com/#ollama-webui/ollama-webui&Date

Hi, I started marketing the project to people interested in running LLMs locally yesterday. Crazy how fast it's grown since then 😅


add some support in the spark adapter to send extra dicts

Add support for sending file attachments via the extra dict to the spark adapter.

@emedvedev  :heart:

LGTM :heart:


Finalize second fulfillment logic for RR operator

For now: the operator who calls the fulfill function first will fulfill the request and get paid. Other operator will fail the fulfill transactions. Like a FCFS pattern

My proposal:

We need to check the requestID, if that is already fulfilled, the operator should not fulfill it.
This should be implemented in the RR worker
We should put a warning in the docs, that the fullfill for RR request can be failed. In case the fulfill happens in the middle of worker checking for fulfilledID.

Reason:
From a consumer perspective: they're happy to know that every operator is racing to fulfill their request
From an operator perspective: they always need to enhance their infra(stable RPC, connections,...)
At the start there should not be many operators for RR.
We don't need to edit smart contracts, as we decided not to do onchain aggregation.

@KelvinThai Thank you! So you think we should not create a logic for a fulfillments from various node operators?
My idea was that consumer can ask for N responses where N is the current max number of off-chain node operators. Node operators start submitting the answers, and when it is larger than N, it will aggregate and fulfill consumer's callback. After receiving N submissions, no more submissions are accepted.
Node operators whose submission are accepted will be rewarded based on the response time arrival. At first, we would have just 1 response, then it could scale more.

Aha! In that case, we need to change the smart contract for onchain aggregation.
That would bring some complication to it: how do we aggregate onchain data? we pick randomly or we normalize all results
If we have 1 operator, that one will fullfill all the responses in the response array. that's a bit weird. I consider we will have 1 operator for a while.
Both cases, we will need to edit onchain and offchain.

Off-chain modification will be just minimal, making sure we do not submit unless it is still allowed. On-chain changes can be quite big. The aggregation can be similar to what we do with Aggregator. One node operator cannot submit multiple responses, and consumer cannot ask for more responses than there are operators.

Sounds good! If this logic is finalized, I can create issues and refactor both onchain and offchain.

I've been thinking about this approach. Here are the questions that we need to answer before proceeding:

In case 3 registered oracle, but only 1 is up and running. The consumer asks for 3 submissions, then only 1 operator will submit all 3.  In that case, we need to edit the comeback submission mechanism in off-chain oracle, it will slow down the whole process.
In case we have 3 submissions from 3 operators, who would call the fulfill function?
How do we calculate the payment for the 3 submissions from 3 operators?

The first raised issue is very good one, and actually difficult for us to solve nicely because of the lack of punishment mechanism.
The simple solutions could be:

Not our problem. It should be node operators goal to make more money by submitting requested data. Incentivisation by payment to node operators. If people want to make sure they get response they would select smaller number of responses. Currently, with chainlink you don't know who responded and how.
Moving responsibility on consumer. We could split the response to 2 steps: 1) request for N responses 2) consumer computes aggregation of results in separate transaction.

For the questions:
2. The last submission would call the fulfill function.
3. My first idea was to make exponentially decreasing payment for each submission, but now I feel like linearly decreasing would be probably better, or maybe even equal proportion for all submissions.

I think we should move on with an equal proportion for every submission. The last one to submit the data will call the fulfill function

Agree!


Does "follow" method really works?

I have just tried to write a sample script:
insta := goinsta.New("CORRECT_USER", "CORRECT_PASS")
if err := insta.Login(); err != nil {
	panic(err)
}

defer insta.Logout()
_, err := insta.Follow("CORRECT_ID")
if err != nil {
	fmt.Println(err)
}

And it doesn't work, but if I do it manually and then just call 'unfollow' with the same ID, it works (it unfollows)

Hi , Thanks for your issue , I will check it as soon as possible

I wrote this code :
package main

import (
	"fmt"

	"github.com/ahmdrz/goinsta"
)

func main() {
	insta := goinsta.New("username", "password")
	err := insta.Login()
	if err != nil {
		panic(err)
	}
	defer insta.Logout()

	user, _ := insta.GetUsername("anotherusername")
	fmt.Println(user.User.StringID())
	_, err = insta.Follow(user.User.StringID())
	if err != nil {
		fmt.Println(err)
	}
}

It's worked for me !

Now it works for me too. But sometimes after quite a few requests I've got err==nil and resp.Status == "ok"
but when I print resp.FriendShipStatus.Following, it is false
I believe, that it is a kind of bad from Instagram, so I have to wait until it is over. But it would be more sensible if I had an error != nil or status != "ok"

Sorry for really late answering.
I mean, that if I make too many "follow" calls, then Instagram bans my actions and do not approve them. But the follow method do not send any errors or warnings about it.
It can be noticed by checking resp.FriendShipStatus.Following (it is false after a "follow" method call)

Hi @KatieKat1 , Thanks for your notice.
If you can please make a pull request and I will merge it as soon as possible.
Regards.


fix: add run-p as a dev dependency

Development fails because run-p is not added as a dep. So this PR adds and fix this behaviour.
Description

Additional context

@frandiox Done! I added it instead!


link broken?

Clicked slides but returns 404 File Not Found error.

This has been fixed. Closing the issue.


Don't break if there's a newline at the end of ~/.pgpass

@tian2992 good point, but shouldn't be - this fixes a specific issue I came across with template generation

This isn't a complete implementation of support for .pgpass files, it's just enough to get by on the server. We could definitely use pgpasslib - https://pgpasslib.readthedocs.io/en/latest/ - to support more complex .pgpass files.
My intent in using .pgpass was to avoid people having to maintain multiple copies of credentials between running ocdsdata-cli and making a local connection to the database. If that's not important, then I'm happy for us to have a separate config file.

Personally I don't think that use case is enough to justify the possible confusion when one user account is being used for many projects. I'd vote for a separate config file.
Also, if my comment about multiple lines in .pgpass files is right - and I'm pretty sure it is (?) - then we in effect have buggy code in master branch now, and I'd argue that should be fixed sooner rather than later.

Personally I don't think that use case is enough to justify the possible confusion when one user account is being used for many projects. I'd vote for a separate config file.

I'm not sure where the confusion would come from - the usual way that .pgpass files are used (as I understand it) is that they provide a password lookup when the other details are specified. So, this is the most Postgres-ey way of storing credentials.

Also, if my comment about multiple lines in .pgpass files is right - and I'm pretty sure it is (?) - then we in effect have buggy code in master branch now, and I'd argue that should be fixed sooner rather than later

Fair point.

is that they provide a password lookup when the other details are specified.

Exactly - WHEN the other details are specified.
So eg, if you run
pg_dump -U user2 db2

And you have a .pg_pass file with
localhost:user1:db1:pass1
localhost:user2:db2:pass2
localhost:user3:db3:pass3

Then pg_dump will look up the .pg_pass file, using localhost/user2/db2 to get the correct password pass2
But that's not how we are using it - unless I've miss-understood this - we are just opening the .pgpass and taking all the settings from there. So not only are we re-using a config file that other programmes use, we're using it wrongly. It's meant to be used for looking up the password when the other details are known, we're using it to look up all the details.
ps. Yes, you can have many lines: https://www.postgresql.org/docs/9.4/static/libpq-pgpass.html

@odscjames yup, I've opened #64 as I've misunderstood what .pgpass files do


feat(Reveal): Add component

Fixes #182

Thanks

Current coverage is 99.29% (diff: 42.85%)

No coverage report found for master at ec2081a.

Powered by Codecov. Last update ec2081a...f170dee

We have problem with augmentation on Rotate example, we cannot it use there because Image doesn't render children. Or I missed something?

Tests and docs are ready, so we need review there.


Data migration to correct HESA equality and diversity codes

Context
In some cases (e.g. Apply again) a candidate may change their mind about what they want to declare on the equality and diversity questionnaire. If they switch the ethnicity or disability answer to Prefer not to say we retained the HESA ethnicity and disability codes that were set when the candidate filled the questionnaire first time around. PR https://github.com/DFE-Digital/apply-for-teacher-training/pull/4761 implemented the code fix to stop this happening in future. This PR adds a data migration to fix up the data in cases where it happened in the past.
Changes proposed in this pull request

[x] Add data migration that finds application forms that have ethnicity or disability with HESA codes that are now redundant. Reset the HESA codes.

Guidance to review

How do we test this?

Link to Trello card
https://trello.com/c/U7W3r0tj/3402-hesa-equality-and-diversity-codes-not-being-set-when-filling-in-apply-2-form
Things to check

[x] This code does not rely on migrations in the same Pull Request
[x] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[x] API release notes have been updated if necessary
[x] This code does not rely on the addition/removal of Azure config environment variables in the same Pull Request
[x] New environment variables have been added to the Azure config

As a kind of dry run, I ran the query part of this migration in rails console on prod and it found 23 invalid records.
      ApplicationForm.where.not(equality_and_diversity: nil).find_each do |application_form|
        disabilities = application_form.equality_and_diversity.dig('disabilities')
        hesa_disabilities = application_form.equality_and_diversity.dig('hesa_disabilities')

        if (!hesa_disabilities.nil? && hesa_disabilities != []) && (disabilities.blank? || disabilities == %w[no] || disabilities == ['Prefer not to say'])
          puts application_form.id
        end

        ethnicity_group = application_form.equality_and_diversity.dig('ethnic_group')

        if (ethnicity_group.blank? || ethnicity_group == 'Prefer not to say') && application_form.equality_and_diversity.dig('hesa_ethnicity').present?
          puts application_form.id
        end
      end

Cross checking the data it looks like those are genuinely invalid (hesa_disability or hesa_ethnicity are present without the relevant input values).


⚠ Bofrost.de has degraded performance

In a0ba6d7, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1436 ms

Resolved: Bofrost.de performance has improved in 926b180 after 52 minutes.


New version: JetBrains.CLion version 2024.1.3

Created by 🥟 Dumplings.
Microsoft Reviewers: Open in CodeFlow

@wingetbot run

@wingetbot run

This package installs and launches normally on a Windows 10 VM.

This package installs and launches normally on a Windows 10 VM.

https://github.com/microsoft/winget-pkgs/issues/142854


merge from template-sync/template-browser-ava

.github/workflows/ci.yml

chore: add ubuntu-latest (jobs.release.runs-on)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>8
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.253%

Totals

Change from base Build<PHONE_NUMBER>3:
0.0%

Covered Lines:
1310

Relevant Lines:
1389

💛  - Coveralls


Add custom social media content on /process pages

Add more content params to social media macro & set up customized content on /process pages
Additions

New params in social-media.html macro
Per-page social media options in _vars-process.html

Testing

Check out branch and run grunt
Navigate to process pages and verify that the linkedin, twitter, and email and icons generate customized posts/tweets/messages

Review

@sonnakim

Screenshots
Twitter:

LinkedIn:

Email:

Todos

@sonnakim, I copied over the tweet/post/email body text pretty directly, so let me know if any of the content should be arranged differently. Is the --From the CFPB in the email body intended as a signature?

Update also needs to be made in cfgov-refresh for OAH landing page

Checklist

[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the front end playbook
[ ] Passes all existing automated tests
[ ] New functions include new tests
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)

@virginiacc I can't test this but it looks good! Yes, I believe the --From the CFPB line is meant to be a signoff, so it should appear after the link, with a couple hard returns—maybe @mthibos can verify this?
Question - are you planning to do a separate PR once you've verified this is working to incorporate different social media content for the other process pages? (Social media content listed here is for the /process/prepare page only; there's different content for /explore, /compare and /close, plus the landing page—see page 20 of this document https://docs.google.com/a/cfpb.gov/document/d/1Jplgzv9WT2qbnfSibRB_p3CqmpFzK_b9-dazsnI5Fp0/edit?usp=sharing )

@sonnakim
Here's the --From the CFPB text used as a signoff:

The social media links for each of the process pages will be generated from the new social objects in  the  _vars-process.html file, if you want to verify the content...

@virginiacc 👍  Signature looks good, as does the content!