gfxrecon_replay: Define VMA_ASSERT to avoid assert crashes

The debug compiled version of gfxrecon_replay would crash with an assert failure in VMA because the captured app did not destroy all images or buffers that it created before calling vkDestroyDevice. This fix changes the assert failure to a warning.

CI gfxreconstruct build queued with queue ID 35360.

CI gfxreconstruct build # 3169 running.

CI gfxreconstruct build queued with queue ID 35378.

CI gfxreconstruct build # 3170 running.

CI gfxreconstruct build # 3170 passed.

you've tested both scenarios with and without a string message in the assert and verified it worked?

Yes, I have.

I'm wondering if calling GFXRECON_LOG_ERROR is the right thing to do. I don't think the situation being identified is necessarily an error - the app has called vkDestroyDevice without first destroying all the images/buffers it created. That's not a fatal error, just a potential resource leak. And it is not a resource leak if the next thing the app does is exit, which would be the most common case. That's why I coded it using GRXRECON_LOG_WARNING.

I would agree with @bradgrantham-lunarg  and say it is.  If an application triggers on an Assert, that indicates something is not right and a warning is not strong enough of a message.

CI gfxreconstruct build queued with queue ID 38306.

CI gfxreconstruct build # 3176 running.

I'm wondering if calling GFXRECON_LOG_ERROR is the right thing to do. I don't think the situation being identified is necessarily an error - the app has called vkDestroyDevice without first destroying all the images/buffers it created. That's not a fatal error, just a potential resource leak. And it is not a resource leak if the next thing the app does is exit, which would be the most common case. That's why I coded it using GRXRECON_LOG_WARNING.

Yes, that's interesting.
It is invalid usage to destroy a device without destroying all its child objects.
However, usually we LOG_ERROR on an unexpected internal situation, like couldn't open a file, or we can't find a Wrapper for an object.  We generally don't report on the application's behavior (with a few exceptions).  So we're just in a limbo where GFXR replay tries not to editorialize on the captured functions unless it would cause internal errors, and we've left that kind of error checking to VVL.
But VMA has the opposite principle - they by default assert and crash in this circumstance, probably assuming it's running under the real app and the user wants this behavior in DEBUG mode.  So at 30,000 feet view we're kind of not using VMA the way it should be used? :shrug:
If we could make LOG_WARNING kick into the debugger or otherwise allow a user debugging to break, that would be ideal. LOG_ERROR in the code and BREAK_ON_ERROR env variable seem expedient and a reasonable compromise but if you have an idea @davidlunarg I want to hear it.
P.S.  https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#VUID-vkDestroyDevice-device-00378, vkDeviceMemory is a child object as far as I read the spec - An exception to this is when there is a parent/child relationship between objects. In this case, the application must not destroy a parent object before its children, https://registry.khronos.org/vulkan/specs/1.3-extensions/html/vkspec.html#fundamentals-objectmodel-lifetime

CI gfxreconstruct build # 3176 passed.


Difference between Directory.Build.props and .targets is not clear

What's the difference between these two files, and which elements should go in which?

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

ID: d410ebeb-3841-a0a9-efb4-185823add4dc
Version Independent ID: 7e397179-4ccc-054c-8137-5e8f2430d794
Content: Customize your build - Visual Studio
Content Source: docs/msbuild/customize-your-build.md
Product: visual-studio-windows
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

I too came to this page hoping to find an answer about what's the difference. But alas that information is not here. Fortunately after a slightly long web search, I came across this blog post from 2010 which states the following:

Typically, imports have the ".props" or ".targets" extension. MSBuild does not really care what the extension is, and > considers these to all be just regular MSBuild project files. By convention, the extensions imply that a ".props" file > contains property definitions (and/or items and definitions), and a ".targets" file contains target definitions.

So in other words it doesn't really matter.

@AdrianSanguineti it does matter, .props are processed earlier compared to targets. Setting BaseIntermediateOutputPath to change project.assets.json location must be done in props, in targets I got errors.

@MagicAndre1981 I would expect that any property you can include in a .props file could instead go into a .targets file. I believe it would need to be inside of a Target element in the .targets file. @rainersigwald for comment, since there might be a lot more to this.

there might be a lot more to this.

Alas, yes. The problems generally arise because MSBuild is import-order dependent, and the last definition of a property, UsingTask, or target "wins".
MSBuild doesn't care about the extension--with explicit imports, you can import from any extension at any point. But there's a widely-used convention:

.props files are imported early in the import order.
.targets files are imported late in the build order.

That's enforced by <Project Sdk="Whatever"> imports (the import of Sdk.props comes first, before all of the contents of the file, then Sdk.targets comes last, after all of the contents of the file). But that just formalized the longstanding convention.
Choosing between .props and .targets
So what does this mean for a user who's setting a property? It's impossible to provide complete guidance, because there's a lot of MSBuild logic out there and some of it requires special handling. But I'd offer these guidelines:

For many properties, it doesn't matter where they're defined, because they're not overwritten and will be read only at execution time.
Set defaults in .props files for behavior that might be customized in an individual project.
Avoid setting dependent properties in .props files by reading the value of a possibly-customized property, because the customization won't happen until the user project.
Set dependent properties in .targets files, because they'll pick up customizations from individual projects.
If you need to override properties, do it in a .targets file, after all user-project customizations have had a chance to kick in. But be wary of derived properties--they may need to be overridden as well.
Include items in .props files (conditioned on a property). All properties are considered before any item, so user-project property customizations will be picked up, and this gives the user project the opportunity to Remove or Update any item brought in by the import.
Define targets in .targets files. But remember that this makes overriding the target more difficult if the .targets file is imported by an SDK, because the user project doesn't have a place to override it by default.
Prefer customizing properties at evaluation time over changing properties inside a target if possible. This makes it easier to load a project and understand what it's doing.

@rainersigwald, great explanation. The guidelines you've provided was exactly what I was hoping to find back in Feb. Hope that goes into the actual documentation.
@MagicAndre1981, I must agree my statement back in Feb of:

So in other words it doesn't really matter.

is a little misguided and I was doing explicit imports at the time.

I can plan to add this to a section on recommendations/guidance. Sound OK, @rainersigwald ?

Yeah, sounds great.


Feature: Accommodating the rendering processes of other improved 3DG methods

Recently, there are many improved methods based on vanilla 3D Gaussian splatting. I have found that Scaffold-GS can significantly improve the reconstruction quality. Many scenarios where 3D Gaussian splatting fails to reconstruct can be successfully handled using this method. You can find more information about Scaffold-GS on its GitHub repository: https://github.com/city-super/Scaffold-GS
However, the rendering process of Scaffold-GS differs from the original 3D Gaussian splatting. Perhaps incorporating a Vertex Shader to enable batch processing on anchor points could be effective. Introducing rendering support for Scaffold-GS would be an exciting addition.
Furthermore, would you consider accommodating the rendering processes of other improved methods? Or developing customizable models to facilitate the implementation of rendering for new 3DG algorithms?

it looks very promising !

I have definitely thought about good ways to incorporate some of the more recent advances in gaussian splatting. My main concern is that the field is advancing so rapidly that I may put a significant amount of work into something that may be rendered obsolete by a new technique in a few months. I'll definitely keep Scaffold-GS on my radar and if it turns out to have long-term viability I'll probably try to incorporate it.


Investigate dynamically switching between PresentMode::Immediate when typing and PresentMode::Mailbox otherwise.

Quote from Richard:

Here's a thought:
Immediate is wonderful for text input; if I switch back and forth between Immediate and MailBox, and type as fast as I can, there's a very noticeable difference in how snappy the text feels when it appears on the screen.
Any other time, I doubt it's noticeable. Actually it is noticeable when I move my mouse, in the sense that the cursor stutters in Immediate mode (presumably because it's trying to repaint on every mousemove event) and not in MailBox mode.
I wonder if it would be worth our switching between the two - like repaint with Immediate mode right after a keyboard event, so the pixels hit the screen as soon as possible, and for all other events, use MailBox?

gpu_device.create_swap_chain will need to be called to switch PresentMode, the main risk is that would introduce noticeable lag.

Editor is no longer being worked on, and has been removed from the repo. Closing.


example repository is no longer available.

These steps are shown in the Azure App Service repository as an example.
Example file is not longer available. Link follows to nowhere.
Please fix.

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

ID: 1b4f27ae-bfd4-6663-13ce-c3d0b40326e3
Version Independent ID: 892091ad-f470-d715-ac5b-6b487640a88e
Content: SSH support for App Service on Linux - Azure
Content Source: articles/app-service/containers/app-service-linux-ssh-support.md
Service: app-service
GitHub Login: @msangapu
Microsoft Alias: msangapu

@mchudinov Thanks for the feedback! We are currently investigating and will update you shortly.

@mchudinov I am unaware of any items that are no longer available after reading through the doc. If you still believe the doc needs attention, can you please reply with further details about what exactly is wrong with the doc (i.e. screenshot).
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Migration to remove Sites

Context
Once all the functionality is in place and has been syncing correctly we will then need to transition to the new model
Link to Trello card

Things to check

[ ] If the code removes any existing feature flags, a data migration has also been added to delete the entry from the database
[ ] This code does not rely on migrations in the same Pull Request
[ ] If this code includes a migration adding or changing columns, it also backfills existing records for consistency
[ ] If this code adds a column to the DB, decide whether it needs to be in analytics yml file or analytics blocklist
[ ] API release notes have been updated if necessary
[ ] Required environment variables have been updated added to the Azure KeyVault

 Site UUIDS: Transition [2/2] - Remove the old site model [SPIKE]


How to get annotation_disease.json on other datasets？

Hello, I want to use your code on other datasets, but I don't know how to process it to get annotation_disease.json, please tell me how you processed to get it!

I have changed the workplace; I'm unsure I can find them.
Here are suggestions:

Please refer to prior knowledge (like symptoms graph) to extract them.

您好，您做的工作我非常的敬佩，我想要复现您的工作，但是在数据部分缺失了annotation_disease.json，您能告诉我如何提取或者得到他们吗？感谢您。

Hello, I want to use your code on other datasets, but I don't know how to process it to get annotation_disease.json, please tell me how you processed to get it!

hi BA-de-BA-jiao-shen-me，我想请问一下，您是否获得了annotation.json这个注释文件，如果您获得了的话，能否分享一下呢


Numeric role with a specific snippet

With newlines included:

class Repo2nBOW(Repo2Base):
    @property
    def id2vec(self):
        return self._id2vec

This produce two instances of role 141 but only with the client-python, it works on the integration tests and other ways to produce the UAST, so probably the bug is in this project.

The .proto files of the client-python were outdated. Will be fixed soon.

The main problem is fixed by updating the protobuf files but the unittests are failing because of some position problems with the static method argument that must be fixed in pydetector.

Should be fixed in v0.0.5, thanks for the report!


[Perf] Add AssociationProxy#loaded?

Allow to check when association is already loaded to avoid unnecessary
queries.
@alachaum @BrunoChauvet should we extract this pattern
if self.organizations.loaded?
  self.organizations.to_a.find { |e| e.id == organization.id }
else
  self.organizations.where(id: organization.id).first
end

to a method on the HasManyAssociation? or is it too specific?

Not sure we should extract it. We should assume always assume that a call to the association method makes an API call. Will be easier to debug in case of issues.


[Suggestion] Add 2 GPU cache parameters

Is there anything that's missing or inappropriate in the docs? Please describe.
GPU cache is supported in v0.5.0, and the config file needs to be updated.
Describe your suggestion
Add 2 GPU cache related parameters to the config file, and update corresponding doc.

#90  Already added to v0.5.0.


Expanded error reporting

Provide additional information to assist with errors and debugging.
{
  "error": {
            "message": "Bad stuff happend",
            "podId": 123,
            "hostName": "sad-server"
        }
}

Staged in main.


Jumping feels very different to Minecraft

In TrueCraft, jumping is enough to step over blocks, but the total air time is very low compared to Minecraft. This is probably due to the gravity being too high. It feels like you're bumping, more than jumping.

Working on it it might take awhile ;)

The problem seems to be that the player just accelerates to terminal velocity way too fast. That's probably an AccelerationDueToGravity issue, but I can't find the relative variable that would have any effect on it.

 It's difficult to build a clean-room physics engine that behaves exactly like Minecraft - reverse engineering friends have mentioned that Minecraft's own physics engine is really poorly implemented and difficult to precisely describe.
Currently the best attempts are on the wiki:

https://github.com/SirCmpwn/TrueCraft/wiki/Entity-Movement-And-Physics
https://github.com/SirCmpwn/TrueCraft/wiki/Vertical-entity-movement

I encourage anyone to take a whack at improving it. There are also less cosemetic (and possibly easier to solve) issues to tackle, like figuring out why non-player entities (sand, mobs, items) have a tendency to fall through the ground. Take a look at the unit tests if you want to look into these issues, they're a good tool for creating reproducable scenarios to test with.

I messed around a little with the value in TrueCraft.Client/MultiPlayerClient.cs a bit. Changing the Gravity acceleration and drag made things a lot more like vanilla MC. However, doing that means the player can jump 2 blocks high instead of one. Trying to figure out why that is. Is there a maxJumpHeight somewhere, or something that would help determine what is going on there?

Those values are straight from Minecraft, changing them wouldn't fix the real bug. The bugs are in the physics simulation, not the constant.

Temporary fix?: Setup an spigot server and use a plugin to record the height value of your player, and make a curve graph based on the data. You could add velocity based on the curve (interpolate)

Should be possible even without a plugin.

Open debug screen (F3)
Start screen capture
Jump.
Transcribe framenumber (calculate time) and height
Draw graph and compare to truecraft

Simulating some other motion curve isn't going to cut it. It's not designed that way. We give the player positive vertical velocity and let the physics engine do the rest.

Well, if you need to stay physical, the only thing you can do (yes, I know I'm preaching to the choir) is adjusting accel. due to gravity, and mass of Player entity. The other day I noticed that Player entity falls faster than Item entities on vanilla mc (which is probably on purpose, to make catching items midair a functionality).


Missing encoding attribute for some color spaces

As reported on Slack, srgb_texture is missing the encoding attribute (should be "sdr-video"). Let's make sure to validate there are no similar errors on other color spaces.

Should be addressed in #129!

Validated that this is fixed in studio-config-v2.2.0_aces-v1.3_ocio-v2.4.ocio.  Closing as fixed in #129.


Installation failing when running project from VS

Hi,
I'm very interested in reviewing your framework (It looks really good). I have downloaded the VS project and built it with no issues. I have run the wizard which looks like it creates the DB and all Stored Procedures but then fails with the exception below. Any ideas?
Thanks
Mike
at Appleseed.Framework.Settings.Database.GetDatabaseVersion() in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\Projects\Appleseed.Framework.Core\DAL\Database.cs:line 77
at Appleseed.Framework.Settings.Database.get_DatabaseVersion() in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\Projects\Appleseed.Framework.Core\DAL\Database.cs:line 40
at Appleseed.Framework.Update.Services.get_DatabaseVersion() in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\Projects\Appleseed.Framework.Core\Update\Services.cs:line 56
at Appleseed.Framework.Update.Services.RunDBUpdate(String connectionString) in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\Projects\Appleseed.Framework.Core\Update\Services.cs:line 330
at Appleseed.Global.UpdateDB() in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\WebSites\Appleseed\Global.asax.cs:line 405
at Appleseed.Global.CheckAndUpdateDB(HttpContext context, String requestPath) in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\WebSites\Appleseed\Global.asax.cs:line 382
at Appleseed.Global.AppleseedApplication_BeginRequest(Object sender, EventArgs e) in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\WebSites\Appleseed\Global.asax.cs:line 248
at Appleseed.Global.Application_BeginRequest(Object sender, EventArgs e) in C:\Development\TestProjects\portal-<IP_ADDRESS>\Master\Appleseed\WebSites\Appleseed\Global.asax.cs:line 431
at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Hi Mike,
Make sure you have the .NET 4.6.1 framework installed.  Simply .NET 4.6 will not work.
The installer will come up and install fine on 4.6 but the portal needs 4.6.1 to run.
Also you can post me your \rb_logs\rb_logs.resx file at the bottom so I can see if there is any error there.

Hey Mike, I dont know if you got the portal to install.
You can try using the Portal Stack that will configure the components for you and has 4.6.1 installed : https://github.com/Appleseed/portal-stack

Hi Eric,
Thanks, I got it to compile and run through VS on another laptop (I'll go
back and check the other laptop this week). The framework looks very
interesting however the page load times seem exceptionally long? It takes a
full minute to load up the first page and each subsequent page (including
the admin interface) takes 20 - 30 secs. Is this something that I am doing
wrong? In VS, web.config continually seems to be being updated and so I do
not know if this has an effect in restarting the app?
Also, do you have any other examples /samples that show more involved
functionality?
Thanks in advance
Mike
On 17 December 2016 at 21:18, Eric Ramseur<EMAIL_ADDRESS>wrote:

Hey Mike, I dont know if you got the portal to install.
You can try using the Portal Stack that will configure the components for
you and has 4.6.1 installed : https://github.com/Appleseed/portal-stack
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Appleseed/portal/issues/17#issuecomment-267787464,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGcWUJWdlI3Vt336HnXhuvbpZtU5r191ks5rJFGogaJpZM4LPKRb
.

We are currently reworking the SQL and Initial load time functions in the next version 1.2.
I would recommend you not run the portal through Visual Studio if you are not developing on it.  You should use a release build ( either created by yourself or from the releases page).  Also host this release build in IIS and not in Visual Studio Cassani.
I will create another issue on Web.config modifications.   For now, you can make your web.config read only to your Application Pool Idenity AFTER install so that it never writes to it again.  I will close this issue as it was reported for the portal failing to install and it seems you have resolved that issue.
The link below will provide you with examples of Appleseed Functionality
http://learn.appleseedapp.net/en/latest/docs/portal/
Regards,
Eric


Notifications don't work in background

Tried using the TWA on Android 12 and Android 13. Not getting notifications when the app is in the background. But getting it when app is in foreground.

That's very weird - do you know what browser the TWA is running on? You don't have any focus mode/apps that could kill things in the background? Can you get notifications for your default browser when that's in the background?

Browser - Chrome
I don't have any focus mode/apps that could kill things in the background. In fact i tried on different mobiles. sometimes it works sometimes it doesn't.  Sometimes, i get notifications when my app is closed but after few hours notifications don't show up unitil I open the app.
I tried using it as PWA, looks like it also has same issue.

Since the notifications are received from Chrome, they behave as expected of a web app running in a web browser, so you need to implement them in the Android part of the app.

Create a FirebaseMessagingService from fcm.
Implement onMessageRecieved ( remember to create a notification channel to receive notifications and build )
Generate an fcm token from it and pass on the token to the web app as a query param.
Now use this token instead of the web-app generated one to send out notifications ( you can send this token to your server when logging in )

Implement a service worker to handle the notifications while in the background.


Mismatched number of frames between F0 (627), spectrogram (628) and aperiodicty (627)

Hi!
I've tried training the model using my own samples but it gave me assertion error in preprocess.py, so Ive tried changing the n_frames value from 128 to 32 and it seemed to have worked. Also I've changed sampling_rate from 16000 to 44100 since my audio is recorded in 44100 Hz.
However, now I get this error while trying to use convert.py

/home/dmitriy/anaconda3/Voice_Converter_CycleGAN-master/preprocess.py:170: RuntimeWarning: divide by zero encountered in log
f0_converted = np.exp((np.log(f0) - mean_log_src) / std_log_src * std_log_target + mean_log_target)
Traceback (most recent call last):
File "convert.py", line 86, in
conversion(model_dir = model_dir, model_name = model_name, data_dir = data_dir, conversion_direction = conversion_direction, output_dir = output_dir)
File "convert.py", line 58, in conversion
wav_transformed = world_speech_synthesis(f0 = f0_converted, decoded_sp = decoded_sp_converted, ap = ap, fs = sampling_rate, frame_period = frame_period)
File "/home/dmitriy/anaconda3/Voice_Converter_CycleGAN-master/preprocess.py", line 88, in world_speech_synthesis
wav = pyworld.synthesize(f0, decoded_sp, ap, fs, frame_period)
File "pyworld/pyworld.pyx", line 425, in pyworld.pyworld.synthesize
ValueError: Mismatched number of frames between F0 (627), spectrogram (628) and aperiodicty (627)

Have I messed something up by changing the values described above? Thank you for your time.

hi..
i have tried the pre tyraining model using your dataset but it gave me this error..please see it.
how can we overcome this problem....
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1195] Creating TensorFlow device (/device:GPU:0) -> (device: 0, name: Quadro K6000, pci bus id: 0000:0f:00.0, compute capability: 3.5)
/home/ai-team/Desktop/Voice_Converter_CycleGAN-master/preprocess.py:170: RuntimeWarning: divide by zero encountered in log
f0_converted = np.exp((np.log(f0) - mean_log_src) / std_log_src * std_log_target + mean_log_target)

@Likkkez
have you solved this problem?

@Likkkez
have you solved this problem?

Its not a great solution but I just removed one element from the array and it seems to have fixed it
                    decoded_sp_converted1 = world_decode_spectral_envelop(coded_sp = coded_sp_converted, fs = sampling_rate)
                    if sampling_rate==44100:
                        decoded_sp_converted = decoded_sp_converted1[:-(len(decoded_sp_converted1)-len(f0_converted))]
                    else:
                        decoded_sp_converted = decoded_sp_converted1

@Likkkez thanks


Client authentication failed

array:2 [
  "state" => "Access object available"
  "accessObject" => {#278
    +"error": "invalid_client"
    +"error_description": "Client authentication failed."
  }
]

I get this error in browser after this in my controller:
     $gotoResponse = GotoWebinar::state(false);
        dd($gotoResponse);

I guess I did not set up something, but I did as I read in the doc.  So I got this package in my laravel project, I've made an app in goto-developer page. I got the keys and I put in into my .env file like this, but with my real datas.
GOTO_DIRECT_USER=
GOTO_CONSUMER_SECRET=
GOTO_CONSUMER_KEY=

@GalBrigitta are you still getting this error?

@upwebdesign yes. I haven't worked with this after. But I need to implement it soon.. I hope I can figure out.

@GalBrigitta my gut feeling is a permissions issue or a cache issue.

I have already cleared the cache. How can it be a permission issue?

@GalBrigitta what are you using for CACHE_DRIVER?

Well I only use the  file cache driver. Isn't that enough?

Anyway, I've tried to authenticate with postman, and I got a succesfull response with my datas. I have no idea why i got this response with this package. I think I have to write the api calls by myself.

@GalBrigitta the reason I ask about the CACHE_DRIVER is because the package saves the access token using the cache. If the token is not saved, your API calls will not work. You can verify the token is saved by going to storage/framework/cache/data, then keep drilling down to find your cache file. Open it up and see if the access_token is stored.

There are two subfolders like b7, 3b. Then a file with a name like 'b73b46d..........' - it is a string. Then in the file:
1562218970O:8:"stdClass":2:{s:5:"error";s:14:"invalid_client";s:17:"error_description";s:29:"Client authentication failed.";}

$client = new Client();

        $response = $client->request('POST', 'https://api.getgo.com/oauth/v2/token', [
            'headers'     => [
                'Authorization' => 'Basic ' . base64_encode('MYCUSTOMERKEY' . ':' . 'MYCUSTOMERSECRET'),
                'Content-Type'  => 'application/x-www-form-urlencoded'],
            'form_params' => [
                'grant_type' => 'password',
                'username'   => 'MYUSER',
                'password'   => 'MYPASS'
            ]
        ]);

So like this is working as well :)

OK. I figured it out, SO:
First of all, with the current version what you get with composer install you get this error:
array:2 [
  "state" => "Access object available"
  "accessObject" => {#277
    +"error": "OAuth API v1 has been decommissioned as announced in February 2018, please switch to OAuth API v2 documented here: https://goto-developer.logmeininc.com/oauth-migration-guide. Please reach out to Support<EMAIL_ADDRESS>with questions."
  }
]

Then I checked what are the changes in the master and I've changed them manually in my project.
For some reason (=my stupidity) I didn't pay attention the added config variable (GOTO_CLIENT_SECRET) which is actually called 'Consumer Secret' on the goto-developer page. GOTO_CONSUMER_SECRET is the user password. For this reason I got confused but at the moment is clear and working.

@GalBrigitta glad to hear you got it figured out!


error: wallet failed to synchronize with ord server after 20 attempts

Executing ord wallet receive, I get the error error: wallet failed to synchronize with ord server after 20 attempts
os: ubuntu 20.04
ord version：ord 0.18.1
how to run ord:  nohup ord server &
bitcoin-cli -getinfo:

Similar issue happen to me, because I created a wallet before bitcoin core sync properly on testnet.
Below are the steps i did to fix it:

stop syncing
remove the wallet that you created before the sync happened ( check you have money on it)
start bitcoin core sync
do ord indexing
if all sync and index then create new wallet

then all good my side do it only testnet

I have been synchronizing the mainnet data. I suspect that my ord is not fully synchronized, so I have this problem. I am still waiting for the synchronization to be completed.

Yes, ord has to be fully synced. You can also add ord wallet --nosync balance

Similar issue happened to me, because I created a wallet before the bitcoin core sync properly on testnet.
Below are the steps I did to fix it:

stop syncing
remove the wallet that you created before the sync happened ( check you have money on it)
start bitcoin core sync
do ord indexing
if all sync and index then create new wallet

then all good my side do it only testnet

Can you list the commands as well for this?


Add "edit raw node" button

The editor has
v All fields
v All tags
v All relations
But that is still not the entire node.
If at the very bottom there was an "advanced" or "edit raw node" button,
the user could edit 100% of the node,
without needing to buy a computer to install JOSM, etc.
Just like wikipedia has Edit raw watchlist.
Or Developer Tools lets one Edit raw HTML in browsers.

@jidanni Do you mean edit the longitude and latitude of the node?

Sure, any anything else hiding in the corners of the node currently
inaccessible via the editor.
Implementation could be as simple as one big HTML textbox,
where the user is editing the raw XML.
Also this should work for nodes that don't exist yet,
but that the user is in the process of adding via the editor.

What else is there that people should be allowed to edit?

we've been through this many times before - see also #5117 #4197 #3088 #2590 #2583
No iD doesn't allow people to directly edit latitude and longitude.
We allow users to edit everything else.

Anything they want to add, as long as it is valid XML.
For instance maybe they want to paste in a long block of XML items that
they have ready and would be tedious to do with the 'help' of the editor.
As far as lat/lon people mentioned, here is a challenge:
Let's say you discover a point in the middle of the Pacific ocean.
It turns out it was simple +/- minus coordinate error.
We need to remove the "-" from the latitude to get the point back in the
proper hemisphere.
Alas, we are helpless without purchasing our own computer to install a
program just to change that one single ASCII.
The best one could do with the mouse would be place the point on the
closest pixel, thus ruining the lesser digits of both of the coordinates.

Let's say you discover a point in the middle of the Pacific ocean. It turns out it was simple +/- minus coordinate error. We need to remove the "-" from the latitude to get the point back in the proper hemisphere. Alas, we are helpless without purchasing our own computer to install a program just to change that one single ASCII.

Level0 is a good tool for the situation you’re describing. It’s a Web application, so you can run it on any computer just like iD.

(OK, I'll need a few days to learn/review if Level0 is better thing to
suggest than just a MediaWiki style textbox...)

Level0 is indeed just a big textbox. I use it frequently to undelete nodes and relations, since Potlatch 1 can only undelete ways.

Looking at https://wiki.openstreetmap.org/wiki/Level0
it will take our user who just wants to edit the lon/lat at least an hour to understand all of that.
If iD just provided a textbox for lon/lat editing like it does already in this image:

the user could solve his problem in 35 seconds!

And well...... trying level0 ........ tried it for five minutes ........ conclusion:
I could do lots of damage to the map!
Not suitable.
Not even suitable if one could understand what all the buttons mean.
Sorry.

I could do lots of damage to the map!

Which is why bill isn't allowed to enter coordinate data directly. https://github.com/openstreetmap/iD/issues/4197#issuecomment-320346010


fix Fix the retry drift random seed

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


wrong python mmskl.py pose_demo

I have successfully installed mmdet by:
pip install -r requirements/build.txt
pip install "git+https://github.com/open-mmlab/cocoapi.git#subdirectory=pycocotools"
pip install -v -e .
However, I got next error when I verify that mmskeleton and mmdetection by "python mmskl.py pose_demo --gpus 1" :
(open-mmlab) zyq@ubuntu:~/mmskeleton$ python mmskl.py pose_demo
/home/zyq/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py:41: UserWarning: Cython.Distutils.old_build_ext does not properly handle dependencies and is deprecated.
"Cython.Distutils.old_build_ext does not properly handle dependencies "
Load configuration information from ./configs/pose_estimation/pose_demo.yaml
Pose estimation:
INFO:matplotlib.font_manager:Could not open font file /usr/share/fonts/truetype/noto/NotoColorEmoji.ttf: In FT2Font: Could not set the fontsize
INFO:matplotlib.font_manager:generated new fontManager
Bad key "text.kerning_factor" on line 4 in
/home/zyq/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/matplotlib/mpl-data/stylelib/_classic_test_patch.mplstyle.
You probably need to get an updated matplotlibrc file from
https://github.com/matplotlib/matplotlib/blob/v3.1.3/matplotlibrc.template
or from the matplotlib source distribution
Traceback (most recent call last):
File "mmskl.py", line 123, in
main()
File "mmskl.py", line 117, in main
call_obj(**cfg.processor_cfg)
File "/home/zyq/mmskeleton/mmskeleton/utils/importer.py", line 24, in call_obj
return import_obj(type)(**kwargs)
File "/home/zyq/mmskeleton/mmskeleton/processor/pose_demo.py", line 78, in inference
model = init_pose_estimator(detection_cfg, estimation_cfg, device=0)
File "/home/zyq/mmskeleton/mmskeleton/apis/estimation.py", line 20, in init_pose_estimator
device='cpu')
File "/home/zyq/mmskeleton/mmdet/mmdet/apis/inference.py", line 33, in init_detector
model = build_detector(config.model, test_cfg=config.test_cfg)
File "/home/zyq/mmskeleton/mmdet/mmdet/models/builder.py", line 48, in build_detector
return build(cfg, DETECTORS, dict(train_cfg=train_cfg, test_cfg=test_cfg))
File "/home/zyq/mmskeleton/mmdet/mmdet/models/builder.py", line 20, in build
return build_from_cfg(cfg, registry, default_args)
File "/home/zyq/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/mmcv/utils/registry.py", line 168, in build_from_cfg
return obj_cls(**args)
TypeError: init() got an unexpected keyword argument 'num_stages'
How can I solve this problem?

@liqier  did you slove this problem?

hi @YeTaoY @liqier
do u solve this problem? i use the newest mmdetection (v2.1), and meet this problem.

I met the same problem, how could you fix it?

@happysheep224 The problem remains unfixed to me

have you try conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch

@happysheep224 I tried  conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.1 -c pytorch,  and the pytorch version is back to 1.2.0
but new error occur "ImportError: mmskeleton.utils.third_party attempted to use a functionality that requires module mmdet.apis, but it couldn't be loaded. Please install mmdet and retry."

@YeTaoY yes, that is the error what I meet now

`https://github.com/open-mmlab/mmskeleton/issues/321#issue-628694245

It was working for me last month, I don't know what changes I've done but I have the same issue. When I roll back to pytorch 1.2.0 I have the following :
pkg_resources.ContextualVersionConflict: (torch 1.2.0 (/home/cmaurice/anaconda3/envs/open-mmlab/lib/python3.7/site-packages), Requirement.parse('torch>=1.3'), {'mmdet'})

@happysheep224 I tried conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.1 -c pytorch, and the pytorch version is back to 1.2.0
but new error occur "ImportError: mmskeleton.utils.third_party attempted to use a functionality that requires module mmdet.apis, but it couldn't be loaded. Please install mmdet and retry."

Do you fix it?

Yeah，rollback the version of mmskeleton to 0.7rc

or you can modify the  mmskeleton/apis/estimation.py and  mmskeleton/utils/third_party.py, by refer to https://github.com/open-mmlab/mmskeleton/compare/v0.7rc0...v0.7rc1

I found that the latest mmdet require pytorch >1.3, and the latest mmskeleton require pytorch ==1.2.0, so their requirements are conflict. My solution is roll back the mmdet to 1.2.0, in this version, mmdet require pytorch >=1.1。
杨扬
Yang Yang

------------------ 原始邮件 ------------------
发件人<EMAIL_ADDRESS>发送时间: 2020年7月4日(星期六) 晚上8:29
收件人<EMAIL_ADDRESS>抄送: "淼儿"<89255775<EMAIL_ADDRESS>主题: Re: [open-mmlab/mmskeleton] wrong python mmskl.py pose_demo (#328)
It was working for me last month, I don't know what changes I've done but I have the same issue. When I roll back to pytorch 1.2.0 I have the following :
pkg_resources.ContextualVersionConflict: (torch 1.2.0 (/home/cmaurice/anaconda3/envs/open-mmlab/lib/python3.7/site-packages), Requirement.parse('torch>=1.3'), {'mmdet'})
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.


Running code at boot time

Right now you have 2 options:

Add .boot/1/2/3 (boot0 already used) which runs ant every boot
Add myfile.wid.js which is loaded whenever an app runs that uses widgets

But using .bootX can't be done for apps, because 2 apps using .boot1 would conflict.
So maybe we should have myfile.boot.js which is run at startup by the bootloader?

Then you could also move the alarm specific stuff from boot0 to alarm.boot.js...


 ImagePickerService now throws an exception if the image is too large. The exception is caught by the widget that called the service, and an error toast is displayed.
Note: I wanted to access the image limit in the exception thrown by ImagePickerService so I added a getter in the ValidationService (used also by ValidationService.isImageAllowedSize) as a convenience method. This allows ImagePickerService to retrieve the limit and pass it to the exception constructor. Let me know if there is a better place (or way) for this.

This is very good! Couldn't have done it different :-)


Gulp compiler

created new methods for compile css and clean the compiled styles.

Issue #2

can you please labele as ‘hacktoberfest-accepted’ my pullrequest? thank you


Increasing validation loss in RDSM with time-varying data

Hi auton-survival community @chiragnagpal @Jeanselme @chufangao @salvaRC , I appreciate your contribution to the time-varying survival analysis and thank you for making this library open to public.
I am having an issue with training RDSM using my own custom dataset. I made sure that my dataset looks like the one you used in jupyter notebook tutorials; my T column is the remaining time to event, and E is an event indicator. However, during training I have been continuously seeing decreasing training loss but increasing validation loss.
Then I tried to see what happens if I train with  PBC dataset that you used in demo notebooks, and I noticed the same situation there; decreasing training loss and increasing validation loss.
I haven't made any changes to the methodology. Is this something intrinsic to RDSM or am I doing something wrong? These are the logs from the model

Hello,
I have just dug into this, I am not able to reproduce the problem. Are you using the RDSM available in auton_survival/models/dsm? Do you have this issue when running examples/RDSM on PBC Dataset.ipynb ? Feel free to share your code if I can help with this

Hello,
I have now tried both codes. I have updated the Jeanselme/ one as the normalization was not adapted for time series and was raising an error. I still do not observe the issue with the PBC dataset. Can you please check if the problem still occurs for you with the latest version? If so, please share with me (by email) the whole repo and I will dig into this.

Hi @Jeanselme , thanks a lot for the update.
I trained the latest version of RDSM on PBC dataset, and seems like it's fine. Validation loss decreases for the first 60 iterations and then starts to increase, but it stops shortly after that. Perhaps it starts to overfit the data since PBC itself is a small dataset.
I am still getting the issue when I use my own data though. But now I know that it might be a dataset problem, and it's not related to the methodology. Thank you!

Hello,
Great to hear you no longer have the issue with PBC. The training should stop after a few iterations of increasing loss on the validation set and return the best model observed.
Concerning your dataset, are you normalizing the data?

Hello,
Great to hear you no longer have the issue with PBC. The training should stop after a few iterations of increasing loss on the validation set and return the best model observed.
Concerning your dataset, are you normalizing the data?

Thanks for the quick reply, I am normalizing only continuous variables. But I found out that in PBC all variables irrespective of the type are being normalized, so I decided to do the same and see what happens.

Hello @Jeanselme , I am still getting the same issue, I have been digging into this for a week. Could you please possibly look at it with fresh eyes if I send you the repository by email? I would very much appreciate it.

@ryuzakizh @Jeanselme Is this resolved yet? If not can I help facilitate this ?

Hello @chiragnagpal, no the issue hasn't been resolved. This was related to my thesis, so I ended up reporting the results that I got, and I still don't know what the problem was. However, we may consider this problem no longer relevant.


[SPARK-19973] Display num of executors for the stage.

What changes were proposed in this pull request?
In StagePage the total num of executors are not displayed. Since executorId may not be consecutive. It is useful to display the total number, which is useful when check how many executors are supplied during the stage.
How was this patch tested?
Manually test.

No, just putting a number in the UI isn't correct. I am not sure this has that much value.
This isn't how we manage changes anyway. Please read http://spark.apache.org/contributing.html

Test build #74662 has started for PR 17312 at commit f64691c.

@srowen
Thanks a lot for quick reply. When we check the reason why a stage ran today much longer than yesterday, we want to know how many executors are supplied. We don't want to count the executor one by one. A total number of executors make sense here.

I don't think this is understandable as the executor count. It would also show the total count of executors include dead ones.

Test build #74663 has started for PR 17312 at commit 7aa6fe5.

The executor metrics are updated to StageUIData when receive executor hear beat.
Yes, the longevity of the executor may not cover the whole stage, but it was once active during the stage.

Test build #74662 has finished for PR 17312 at commit f64691c.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/74662/
Test PASSed.

Test build #74663 has finished for PR 17312 at commit 7aa6fe5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/74663/
Test PASSed.

Merged build finished. Test PASSed.

Can you put a screenshot here? Might actually be useful to have.

@rxin Thanks a lot. I added a number after Aggregated Metrics by Executor

I think it is good to have such count, but just this (2) is a little strange, maybe we could change the description so people will know the meanings of this (2).

@jerryshao
Thanks a lot you can help review, really appreciate.

Test build #74916 has started for PR 17312 at commit 3316ba6.

@rxin @jerryshao
I uploaded another screenshot and give a short description there.
Now it is (2 executors supplied).

IMO "(2 executors)" should be enough :).

Sure, that would be cool :) Thanks again you can help review this.

Test build #74926 has started for PR 17312 at commit 158118d.

Test build #74916 has finished for PR 17312 at commit 3316ba6.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/74916/
Test FAILed.

Test build #74930 has started for PR 17312 at commit 3bb8111.

Test build #74926 has finished for PR 17312 at commit 158118d.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/74926/
Test PASSed.

Merged build finished. Test PASSed.

@rxin @jerryshao @srowen
I've refined the description and uploaded the screenshot of latest version. Please take another look.

Test build #74930 has finished for PR 17312 at commit 3bb8111.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/74930/
Test PASSed.

Do you intend to show the number of active executors? Don't think that's what this does and I am not sure it helps to show the total number of dead and alive.

I want to show the number of executors once active during the stage. StageUIData gets updated when receiving the hear beat from executor.

@jinxing64 I think it's helpful, can you please add the total time of an application to the Spark UI

@harounemohammedi
Thanks a lot for comment on this. I'm hesitate to include the total time in this pr.

Your screenshot had 3 executors. Why does it say 2?

@rxin because I killed executor1 and it is not active during this stage.

That would be pretty confusing wouldn't it? The table has 3 entries and the title says only 2.

@rxin
Yes, I'm so confused by the second screenshot I posted.
The only reason I can find is that the stageData in ExecutorTable is none thread safe. Size(2 executors) returned; maybe at this point, new executor is inserted.

Are you still working on this? @jinxing64

Sorry, I will close it for now.


Add code quality tooling

add config for ruff
add pre-commit
add commitlint
add github workflows
reformat code

Welcome to Codecov :tada:
Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.
Thanks for integrating Codecov - We've got you covered :open_umbrella:


Add support for SQL server

Ref. https://github.com/uhppoted/uhppoted-app-db/issues/2
Go driver: https://github.com/denisenkom/go-mssqldb
Superseded by: https://github.com/microsoft/go-mssqldb

[ ] get-acl
[ ] put-acl
[ ] compare-acl
[ ] load-acl
[ ] store-acl
[ ] README
[ ] CHANGELOG

Provisional implementation of SQL Server support - pending release v0.8.6


fix helm target namespace

Signed-off-by: Di Xu<EMAIL_ADDRESS>
What type of PR is this?
kind/bug
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

Codecov Report

Merging #326 (5d70f6e) into main (be9a89a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #326   +/-   ##
=======================================
  Coverage   11.09%   11.09%
=======================================
  Files          47       47
  Lines        4992     4992
=======================================
  Hits          554      554
  Misses       4400     4400
  Partials       38       38

Continue to review full report at Codecov.

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


Refactor The CI Workflow

The CI Workflow works fine, but it is very slow, because there is no parallelization in it. Every microservice can be built and unit tested individually, that means that we could split the workload in 4. Make sure that after the workflow runs faster in whatever way you see fit.

This issue has been successfully closed.


Readme should specify that add_artifact! requires a compressed tarball

Hello, after failing at creating an artifact with this package, I asked a question on discourse here.
The solution was that add_artifact! seems to expect a tar.gz compressed tarball and not a simple tar file.
Can you confirm this ?
If this is the case, I think it could be useful to add a specific comment on that matter so that other users don't have the same troubles that I faced.
Thanks anyway for this very helpful piece of code !

Bump ?


join command lists tags in output OpenAPI multiple times

Describe the bug
Tags are duplicated multiple times in output OpenAPI, even if the tags are not duplicated across the input files (only one Tag definition in one source OpenAPI file).
To Reproduce
Steps to reproduce the behavior:
openapi join api1.yaml api2.yaml

See output:
tags:
  - name: Event
    description: [redacted]
    x-displayName: Event
  - name: Session
    description: [redacted]
    x-displayName: Session
  - name: Session
    x-displayName: Session
  - name: Session
    x-displayName: Session
  - name: Event
    x-displayName: Event
  - name: Event
    x-displayName: Event
  - name: Event
    x-displayName: Event
  - name: Event
    x-displayName: Event
  - name: Event
    x-displayName: Event

Expected behavior
A clear and concise description of what you expected to happen.
Tags listed in only one input file are not duplicated.
Logs
If applicable, add logs to help explain your problem.
OpenAPI definition
If applicable, add an OpenAPI definition and .redocly.yaml configuration file that helps reproduce the problem.
At a minimum, please state the specification version(s) you're using (e.g. 2.0, 3.0, 3.1).
Redocly Version(s)
What version of Redocly CLI are you using?
% openapi --version
1.0.0-beta.103

Node.js Version(s)
What version of node.js are you using?
% node --version
v16.15.1

Hi @richiksc,
Thanks for reporting the issue. You may try using --without-x-tag-groups option as a workaround. See the docs.

Yes, it looks like the issue is not present when I use --without-x-tag-groups, but ideally I'd like to preserve tag groups.


[dev] SOURCE SHIFT: drop the local note files after transferred home page backtracking notes from local files to vault source

DONE


Feature/jsend_response

What was added

edited all api responses to follow JSEND

code field is omitted as it is unused

DELETE requests will now return the deleted records, if any were deleted.
In case of no records deleted, it won't raise error as DELETE is idempotent
some methods will now return records ordered by created_at DESC

GET report, GET review

Handle report call, if requested with action = 'delete', will return the deleted review record
minor fixes
added / edited some api calls

GET user : allow querying by account_id, user_type
GET preference : get all preferences, get preference by id
new router for /api/preferences

better error handling & formatted error messages for request validation

Related Issues

link related issues here
REPO_NAME #issueNum

Future Works

What else should be done ?

Checklist

[x] I have performed unit tests
[x] I have added necessary docs
[x] I have checked for potential bugs & issues

Great! thanks for the thorough review


Add a --patch option

The --patch option should generate a patch and spit it to stdout.

http://stackoverflow.com/questions/15270970/is-it-possible-to-git-diff-a-file-against-standard-input

Renamed mode to diff rather than patch. This is because it's not possible to apply the diff using git apply, so I thought it made more sense to treat it as a "view the diff" mode.


Add fzf-tmux pane_height/pane_width fallback

Based on this issue.
Adds a fix to the fzf-tmux script for newer distros that use a particular version of tput, specifically Fedora 26 and Debian 10, which causes fzf-tmux to fail when run inside tmux's run-shell command.
The fix falls back to using tmux's pane_width and pane_height command to set the $lines and $columns variable, but only if tput lines or tput cols fails.
Dockerfile for verifying that this works:
FROM docker.io/fedora:26

RUN dnf install -y tmux git curl

RUN git clone https://github.com/mike-hearn/fzf ~/.fzf && \
        cd ~/.fzf && \
        git checkout fedora26-tput-fix && \
        ~/.fzf/install --all

Looks good to me, thanks!


Can pagefind pull its data from a json index file?

I ask because in many static site generators it would be rather simple to generate an index during site build that contains the data that you wish pagefind to index.
I do something similar for generating the json for tinysearch in my zola site:
https://github.com/Jieiku/abridge/blob/master/templates/tinysearch_json.html
When I issue a zola build, the above linked template generates json data, I then use the tinysearch executable to consume that json data and generate the real index that tinysearch will use.
So basically the json index that I generate from zola is an intermediate index.
The demo for that search is here: https://jieiku.github.io/abridge-tinysearch/
tinysearch uses bloom filters so in the below json I also have a 'meta' field which is meant to be the data to include as a description of the indexed link. For pagefind you would likely only have title, url, body
this is what that intermediate json data looks like:
[{
"title": "Abridge Zola Theme",
"url": "https://abridge.netlify.app/overview-abridge/",
"meta": "Abridge is a fast and lightweight Zola theme using semantic html, only ~6kb css before svg icons and syntax highlighting, no mandatory JS, and perfect…",
"body": "Abridge is a fast and lightweight Zola theme using semantic html, only ~6kb css before svg icons and syntax highlighting, no mandatory JS, and perfect Lighthouse, YellowLabTools, and Observatory scores. Here is a Zola Themes Benchmarks Page.\n\nFor quick setup copy the config.toml from the abridge theme into the root of your zola site, this will give you a base configuration with all config values used.\nYou can then edit or comment out the values in this file as necessary.\nYou should also uncomment out the line #theme = "abridge" in your root zola config.toml file. This tells your root zola site to use the abridge theme in the themes folder.\nYou can set the number of items that appear on the home page by editing themes\\abridge\\content\\_index.md file and adjusting paginate_by = 5\nYou can set the overal page width by editing themes\\abridge\\sass\\_variables.scss file, and adjusting these two lines:\n$mw:50% !default;// max-width\n$mb:1200px !default;// value at which to switch from fluid layout to using max-width\n\n"
},{
"title": "Code Blocks and Themes",
"url": "https://abridge.netlify.app/overview-code-blocks/",
"meta": "This article shows various Code Blocks allowing to easily compare sublime themes.\n",
"body": "This article shows various Code Blocks allowing to easily compare sublime themes.\nCode Blocks\nCode blocks.. ❤ with automatic syntax highlighting ✨\nSee the docs for options.\nInline Code block\nIf we want, we can also specify inline code which is useful for the small stuff.\nrust\n1//! jelly-actix-web-starter - A starter template for actix-web projects that feels very Django-esque. Avoid the boring stuff and move faster.\n2\n3use jelly::actix_web;\n4use mainlib;\n5use std::io;\n6\n7#[actix_web::main]\n8async fn main() -> io::Result<()> {\n9    mainlib::main().await\n10}\n11\n12let context = Context::new();\n\nTOML\n1base_url = "https://abridge.netlify.app/"\n2title = "Abridge"\n3description = "Abridge is a fast and lightweight Zola theme using semantic html, abridge.css class-light CSS, and No Mandatory JS."\n4default_language = "en"\n5#theme = "abridge"\n6\n7build_search_index = true\n8minify_html = false\n9feed_filename = "atom.xml"\n10taxonomies = [\n11    {name = "categories", feed = true},\n12    {name = "tags", feed = true},\n13]\n\nhtml\n<!doctype html>\n\n\n  <meta charset="utf-8">\n  <title>Example HTML5 Document</title>\n\n\n  \n
Test
\n\n\n\njavascript\nfunction closeSearch() {//close the search displaying the regular page.\n    const e = document.querySelector("main");\n    e.innerHTML = window.main\n}\n\nfunction goSearch() {// on enter key or search icon click display results to the page.\n    const e = document.querySelector("main");\n    window.main || (window.main = e.innerHTML);\n    var t = document.getElementById("suggestions"),\n        n = ((ResultsClone = t.cloneNode(!0)).id = "results", document.createElement("div")),\n        o = '
<button type="button" title="Close Search" onclick="closeSearch()"></button> Results For: '.concat(document.getElementById("searchinput").value, "
");\n    return n.innerHTML = o, ResultsClone.insertBefore(n, ResultsClone.firstChild), e.innerHTML = ResultsClone.outerHTML, t.innerHTML = "", document.getElementById("searchinput").value = "", !1\n}! function() {\n  // search function code goes here\n}\n\nphp\n<?php\n/**\n * Postfix Admin\n */\nrequire_once('common.php');\n$CONF = Config::getInstance()->getAll();\n\nif ($_SERVER['REQUEST_METHOD'] == "POST") {\n    if (!isset($_SESSION['PFA_token'])) {\n        die("Invalid token (session timeout; refresh the page and try again?)");\n    }\n    $fUsername = trim(safepost('fUsername'));\n    if ($lang != check_language(false)) { # only set cookie if language selection was changed\n        setcookie('lang', $lang, time() + 60*60*24*30); # language cookie, lifetime 30 days\n    }\n}\n\n$_SESSION['PFA_token'] = md5(uniqid("pfa" . rand(), true));\n\n/* vim: set expandtab softtabstop=4 tabstop=4 shiftwidth=4: */\n\njson\n{\n    "name": "Abridge Zola Theme",\n    "short_name": "Abridge",\n    "description": "Fast & Lightweight Zola Theme",\n    "start_url": "/index.html",\n    "scope": "/",\n    "background_color": "#111111",\n    "theme_color": "#222222",\n    "display": "standalone",\n    "icons": [\n        {\n            "src": "/android-chrome-192x192.png",\n            "sizes": "192x192",\n            "type": "image/png"\n        },\n        {\n            "src": "/android-chrome-512x512.png",\n            "sizes": "512x512",\n            "type": "image/png"\n        },\n        {\n            "src": "/android-chrome-192x192m.png",\n            "sizes": "192x192",\n            "type": "image/png",\n            "purpose": "maskable"\n        }\n    ]\n}\n\nSQL\n-- jelly-actix-web-starter - Creates an accounts table, along with some associated helpers.\n\ncreate or replace function update_timestamp() returns trigger as $$\nbegin\n    new.updated = now();\n    return new;\nend;\n$$ language 'plpgsql';\n\ncreate table if not exists accounts (\n    id serial primary key,\n    name text not null,\n    email text not null unique,\n    password text not null,\n    profile jsonb not null default '{}',\n    plan integer not null default 0,\n    is_active boolean not null default true,\n    is_admin boolean not null default false,\n    has_verified_email boolean not null default false,\n    last_login timestamp with time zone,\n    created timestamp with time zone not null default now(),\n    updated timestamp with time zone not null default now()\n);\n\ncreate unique index accounts_unique_lower_email_idx on accounts (lower(email));\n\ncreate trigger user_updated before insert or update on accounts\nfor each row execute procedure update_timestamp();\n\nLua\nfunction square(x)\n    return x * x\nend\n\nprint(square(2)) -- prints '4'\n\nfunction getPlayerInformation()\n   playerName = UnitName("player")\n   playerLevel = UnitLevel("player")\n   specId, specName = GetSpecializationInfo(GetSpecialization())\n\n   return "Hey, I'm " .. playerName .. " (Level " .. playerLevel .. "). I'm currently in spec " .. specName .. "."\nend\n\nprint(getPlayerInformation())\n\nC\n#include <stdio.h>\nint main() {\n    int a;\n    /* actual initialization */\n    a = 10;\n    printf("Hello, World!");\n    return 0;\n}\n\nC++\n// Your First C++ Program\n\n#include <iostream>\n\nint main() {\n    int a;\n    /* actual initialization */\n    a = 10;\n    std::cout << "Hello World!";\n    return 0;\n}\n\nGo\npackage main\n\nimport "fmt"\n\nfunc main() {\n    var myvariable1 = 20\n    var myvariable2 = "hello world"\n    fmt.Println("hello world")\n}\n\nPython\n#!/usr/bin/env python3\nimport smtplib, socket\nfrom influxdb import InfluxDBClient\n\nwhile True:\n    send = 1\n    later = time.time() + 25200\n    iso = time.ctime(later)\n    tempF = round(bme280.temperature * 1.8 + 29, 3) #C to F formula is +32, difference is to correct bme280 temperature offset\n    humidity = round(bme280.humidity, 3)\n    pressure = round(bme280.pressure, 3)\n    # serialize data as JSON\n    data = [\n        {\n          "measurement": measurement,\n              "tags": {\n                  "location": location,\n              },\n              "time": iso,\n              "fields": {\n                  "temperature" : tempF,\n                  "humidity": humidity,\n                  "pressure": pressure\n                               }\n          }\n        ]\n    # Send the JSON data to InfluxDB\n    try:\n      client.write_points(data)\n    except socket.error as e:\n      print("Could Not Connect to InfluxDB!")\n    if tempF > 90 and humidity > 55:\n      emailSubject = "Humidity>55:  " + str(int(humidity)) + "%H  , Temperature>90:  " + str(int(tempF)) + "F"\n      emailContent = 'Humidity:  ' + str(int(humidity)) + '%H  , Temperature:  ' + str(int(tempF)) + 'F  Dashboard'\n    elif humidity > 55:\n      emailSubject = "Humidity>55:  " + str(int(humidity)) + "%H"\n      emailContent = 'Humidity:  ' + str(int(humidity)) + '%H  , Temperature:  ' + str(int(tempF)) + 'F  Dashboard'\n    elif tempF > 90:\n      emailSubject = "Temperature>90:  " + str(int(tempF)) + "F"\n      emailContent = 'Humidity:  ' + str(int(humidity)) + '%H  , Temperature:  ' + str(int(tempF)) + 'F  Dashboard'\n    else:\n      send = 0\n    if send == 1:\n      try:\n        if time.time() > lastEmailTime or abs(lastTemp-int(tempF)) > 1:\n          lastEmailTime = time.time()+emailInterval\n          lastTemp = int(tempF)\n          sender.sendmail('jake@example.com', emailSubject, emailContent)\n      except socket.error as e:\n        print("Could Not Connect to SMTP server!")\n    time.sleep(interval)\n\n"
},{
"title": "Markdown and Style Guide",
"url": "https://abridge.netlify.app/overview-markdown-and-style/",
"meta": "This article offers a sample of basic Markdown syntax that can be used in Zola content files, also it shows if basic HTML elements are decorated with …",
"body": "This article offers a sample of basic Markdown syntax that can be used in Zola content files, also it shows if basic HTML elements are decorated with CSS in a Zola theme.\nHeadings\nThe following HTML
—
 elements represent six levels of section\nheadings.
 is the highest section level while
 is the lowest.\nH1\nH2\nH3\nH4\nH5\nH6\nParagraph\nXerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum,\nvoluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma\ndolestendit peritin re plis aut quas inctum laceat est volestemque commosa as\ncus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin\nporecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur?\nQuiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit\nut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda\nveliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore\neost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata\ntiustia prat.\nItatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne\nsapicia is sinveli squiatum, core et que aut hariosam ex eat.\nBlockquotes\nThe blockquote element represents content that is quoted from another source,\noptionally with a citation which must be within a footer or cite element,\nand optionally with in-line changes such as annotations and abbreviations.\nBlockquote no attribution\n\nTiam, ad mint andaepu dandae nostion secatur sequo quae.\nNote that you can use Markdown syntax within a blockquote.\n\nBlockquote with attribution\n\nDon't communicate by sharing memory, share memory by communicating.\n— Rob Pike1\n\n\nAll men by nature desire to know.\n― Aristotle2\n\n\nPower comes in response to a need, not a desire.\n— Goku\n\nTables\nTables aren't part of the core Markdown spec, but Zola supports them\nout-of-the-box.\nNameAge\nAlice23\nBob27\nCody33\nJohn59\nKerry23\n\nTable with Inline Markdown\nItalicsBoldCodeStrikeThrough\nitalicsboldcodestrikethrough\n\nLarge table within figure tag\nSurround very Large tables with

 so they can scroll horizontally.\n\nManufacturerVolkswagenToyotaFordHondaChevroletBMWHyundaiAudiNissanKiaMercedesTeslaMitsubishiSuzukiVolvoSubaruMazdaJaguarBuickLexusGMCPorscheCadillac\nRevenue $B$254$249$127$124$123$113$88$83$74$61$55$54$38$31$30$28$27$22$21$19$17$16$12\n\n\n*revenue values found on search engine and not verified, for figure scroller table demonstration purposes only.*\nFoldable Text\n\n    Title 1\n    IT'S A SECRET TO EVERYBODY.\n\n\n    Title 2\n    Stay awhile, and listen!\n\nCode Blocks\nCode blocks.. ❤ with automatic syntax highlighting ✨\nSee the docs for options.\nCode block with backticks\n<!doctype html>\n\n\n  <meta charset="utf-8">\n  <title>Example HTML5 Document</title>\n\n\n
Test
\n\n\n\nLine Numbers, Highlighting\n1<!doctype html>\n2\n3\n4  <meta charset="utf-8">\n5  <title>Example HTML5 Document</title>\n6\n7\n8
Test
\n9\n10\n\nInline Code block\nIf we want, we can also specify inline code which is useful for the small stuff.\nList Types\nOrdered List\n\nFirst item\nSecond item\nThird item\n\nUnordered List\n\nList item\nAnother item\nAnd another item\n\nNested list\n\nFruit\n\nApple\nOrange\nBanana\n\n\nDairy\n\nMilk\nCheese\n\n\n\nOther Elements — abbr, sub, sup, kbd, mark, link\nGIF is a bitmap image format.\nH2O\nXn + Yn = Zn\nPress CTRL+ALT+Delete to end the\nsession.\nMost salamanders are nocturnal, and hunt for insects, worms, and\nother small creatures.\n\n\n1\nThe above quote is excerpted from Rob Pike's talk\nduring Gopherfest, November 18, 2015.\n\n2\nThe quote is the first sentence of Aristotle's Metaphysics.\n\nNavs\nSite primary menu is created by nesting the nav under a header tag. Refer to the top of this site for an example.\nIf the nav tag is under the main tag instead of the header tag then the links will have a border:\n\n    \n        \n            < Previous\n            Next >\n        \n    \n\nForms\n\n    Name\n        \n    \n    Email Address\n        \n    \n    Message\n        \n    \n    \n    Send\n    \n    \n    Fruit\n    \n        Select a fruit…\n        Banana\n        Watermelon\n        Apple\n        Orange\n        Mango\n    \n    \n    \n        Size\n        \n        \n        Small\n        \n        \n        \n        Medium\n        \n        \n        \n        Large\n        \n        \n        \n        Extra Large\n        \n    \n    \n    \n        \n        \n        I agree to the Terms and Conditions\n        \n        \n        \n        I agree to share my information with partners\n        \n    \n    \n    \n        \n        \n        Publish on my profile\n        \n        \n        \n        Publish on my profile my accomplishments\n        \n    \n    \n    \n    \n    \n    File browser\n    \n    \n    \n    Range slider\n    \n    \n    \n    Date\n    \n    \n    \n    Time\n    \n    \n    \n    Color\n    \n    \n\n"
},{
"title": "Image Shortcodes",
"url": "https://abridge.netlify.app/overview-images/",
"meta": "This post covers the imghover and img shortcodes. Images can also be embedded directly using markdown ![Ferris](ferris.svg), but it is better to use a…",
"body": "This post covers the imghover and img shortcodes. Images can also be embedded directly using markdown ![Ferris](ferris.svg), but it is better to use a shortcode so you can explicitly set the width and height, this will help prevent content layout shift which improves user experience and the google lighthouse score.\nimg Shortcode\n\nsrc is the path and filename of the image. (mandatory)\nclass sets a class for the image. (optional)\nalt sets the alt note for the image. (recommended for google lighthouse)\nw is the width of the image. (recommended for google lighthouse)\nh is the height of the image. (recommended for google lighthouse)\n\nUsage (same path)\n{{ img(src="ferris-happy.svg" alt="Ferris is Happy" w=600 h=400) }}\n\nOutput\n \n\n\n\n \n\nUsage (relative path ./)\n{{ img(src="./img/ferris-gesture.svg" alt="Ferris says Hello" w=600 h=400) }}\n\nOutput\n \n\n\n\n \n\nUsage (root path /)\n{{ img(src="/overview-rich-content/ferris.svg" alt="Ferris the Rustacean" w=600 h=400) }}\n\nOutput\n \n\n\n\n \n\nSVG image directly in code:\n<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 489" width="600" height="489"><g fill="#8f1f1d"><path d="M70 324c1 3 3 4 6 4l24 4 2 5-10 20v5l7 4 24-1 4 4-7 21c0 2 0 4 3 6 1 2 4 2 7 2l24-5 4 4-1 22c-1 2 0 4 3 5h6l23-8 6 3 4 22c0 2 1 3 3 4h7l21-13 6 2 8 20 5 5c3 0 5 0 7-2l18-15h5l13 18c1 2 3 4 6 4l5-3 14-18h6l17 16c1 1 4 2 6 1 3 0 5-1 6-3l9-21 6-1 19 14h7c3 0 5-3 5-5l4-21 6-2 22 9 7-1c2-1 3-2 3-5v-21l5-4 24 6c3 0 5 0 6-2 2-2 3-4 2-6l-4-21 3-5 24 2c4 0 6 0 7-3v-5l-9-21 3-5 25-2 5-5-1-5-14-18c0-1-1-19-12-33v-1c-26-36-106-64-201-65-100-2-184 26-206 64-10 10-12 26-11 26l-15 17c-1 3-2 5-1 7z"/><path d="M565 247c-1-3-12-2-14-3l-38 1-4-7 26-38c1-2 7-7 6-9-3-3-12 1-14 1l-39 7-4-6 22-49c0-3 7-15 5-18-2-2-11 6-13 6l-43 28-4-5 11-43c0-3 7-18 5-19-2-2-9 5-12 6l-38 30-5-4 9-51c0-3 3-18 1-19s-15 13-17 14l-30 38-6-3-3-56c0-3 0-14-3-14-3-1-5 8-8 11l-25 50-7-1-13-57c-1-3-2-12-4-12-4 0-5 10-7 13l-15 56-7 1-22-52c-1-2-4-12-7-12-3 1-2 9-3 12l-7 61-6 3-19-27c-3-1-15-19-18-18-2 1 0 21-1 23l1 40-6 4-36-35c-3-1-7-7-10-5-2 2 0 10 0 13l13 53-4 5-41-26c-2-1-10-7-12-4-2 2 3 4 3 7l22 56-5 6-65-22c-3-1-10-5-12-1-1 2 5 6 6 9l49 53-3 7-47-6c-3 0-9-1-11 1-1 4 6 7 7 9l36 40a116 116 0 0 0 14 46c27 50 110 87 209 87 105 0 193-41 214-95 11-15 13-37 12-38l29-31c2-4 9-9 8-11z"/><path d="m99 289-67 10c-13 3-5 5 0 6 14 2 84 3 85 4zm402 3 67 10c13 4 5 6 0 6-14 2-84 5-86 5z"/></g><path d="M227 293s-24-26-47 0c0 0-18 35 0 52 0 0 30 24 47 0 0 0 21-20 0-52z"/><path fill="#fff" d="M200 302c0 11 6 19 14 19 7 0 12-8 12-19 0-10-5-18-12-18-8 0-14 8-14 18z"/><path d="M360 283s-40-17-52 22c0 0-11 47 33 49 0 0 58-10 19-71z"/><path fill="#fff" d="M339 299c0 10 7 20 14 20 8 0 14-10 14-20s-6-18-14-18c-7 0-14 8-14 18z"/></svg>\n\n\nimghover Shortcode\nThe first image in the src array is the one compared to all the others.\nWhen you hover your mouse over an image it will display the image to compare.\nThis can be used to compare only one image with another by passing only two src in the array.\n\nsrc is an array of paths and filenames for the images. (mandatory)\nw is the width of the image.\nh is the height of the image.\np is the percent size that you want the image to use on the page. (50 is the default)\n\nw and h are used only to calculate the aspect ratio, overall size is set by p\nUsage (same path)\n{{ imghover(src=["ferris.svg", "ferris-gesture.svg", "ferris-happy.svg"] w=600 h=400 p=45) }}\n\nOutput\n  \n
same-ferris-gesture on hover
\n

 \n
same-ferris-happy on hover
\n

\n\n\n\n\n  \n    same-ferris-gesture on hover\n      \n    same-ferris-happy on hover\n     \n\n  \n      #same-ferris-gestureimage {\n        background-image: url('ferris.svg');\n        background-size: contain;\n        background-repeat: no-repeat;\n        width: 45%;\n        height: 0;\n        padding-top: 30%;\n\n      }\n      #same-ferris-gestureimage:hover {\n        background-image: url('ferris-gesture.svg');\n      } \n      #same-ferris-happyimage {\n        background-image: url('ferris.svg');\n        background-size: contain;\n        background-repeat: no-repeat;\n        width: 45%;\n        height: 0;\n        padding-top: 30%;\n\n      }\n      #same-ferris-happyimage:hover {\n        background-image: url('ferris-happy.svg');\n      }\n\nUsage (relative path ./)\n{{ imghover(src=["./img/ferris.svg", "./img/ferris-gesture.svg"] w=600 h=400 p=45) }}\n\nOutput\n  \n
rel-ferris-gesture on hover
\n

\n\n\n\n\n  \n    rel-ferris-gesture on hover\n     \n\n  \n      #rel-ferris-gestureimage {\n        background-image: url('img/ferris.svg');\n        background-size: contain;\n        background-repeat: no-repeat;\n        width: 45%;\n        height: 0;\n        padding-top: 30%;\n\n      }\n      #rel-ferris-gestureimage:hover {\n        background-image: url('img/ferris-gesture.svg');\n      }\n\nUsage (root path /)\n{{ imghover(src=["/overview-rich-content/ferris.svg", "/overview-rich-content/ferris-gesture.svg"] w=600 h=400 p=45) }}\n\nOutput\n  \n
root-ferris-gesture on hover
\n

\n\n\n\n\n  \n    root-ferris-gesture on hover\n     \n\n  \n      #root-ferris-gestureimage {\n        background-image: url('https://abridge.netlify.app/overview-rich-content/ferris.svg');\n        background-size: contain;\n        background-repeat: no-repeat;\n        width: 45%;\n        height: 0;\n        padding-top: 30%;\n\n      }\n      #root-ferris-gestureimage:hover {\n        background-image: url('https://abridge.netlify.app/overview-rich-content/ferris-gesture.svg');\n      }\n\n"
},{
"title": "Rich Content",
"url": "https://abridge.netlify.app/overview-rich-content/",
"meta": "Several custom shortcodes are included to augment CommonMark (courtesy of d3c3nt theme), in addition to those already provided by Zola. video, image, …",
"body": "Several custom shortcodes are included to augment CommonMark (courtesy of d3c3nt theme), in addition to those already provided by Zola. video, image, gif, and audio were created to help you take advantage of modern HTML elements in your writing.\nVideo\nThe video shortcode takes a sources parameter (an array of strings)\nand returns a <video> tag. Each string in the sources array should\nbe a path to a video file of a different type (webm, mp4, etc). Each\nindividual source is then converted into a <source> tag, and the\nelement is returned.\nUsage\n{{ video(sources=["over9000_av1.mp4", "over9000_vp9.webm"]) }}\n\nOutput\n<video controls>\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000_av1.mp4" type="video/mp4" />\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000_vp9.webm" type="video/webm" />\n  Your browser doesn't support the video tag and/or the video formats in use here – sorry!\n</video>\n\n\n\n  \n  \n  Your browser doesn't support the video tag and/or the video formats in use here – sorry!\n\nImage\nThe image shortcode returns a <picture> tag and accepts three\nparameters: sources (an array of strings), fallback_path, and\nfallback_alt (both strings).\nEach string in the sources array should be a path to an image file of\na different type (webp, png, jpg, etc). fpath and\nfalt are used to create an  tag for the browser to fall\nback on if the other formats aren't yet supported, fw and fh set the width and height of the fallback\nUsage\n{{ image(sources=["over9000-960.webp", "over9000-640.webp", "over9000-400.webp"], fpath="over9000-640.webp", fw=640, fh=480, falt="ITS OVER 9000!") }}\n\nOutput\n<picture>\n  <source srcset="https://abridge.netlify.app/overview-rich-content/over9000-960.webp" type="img/webp" />\n  <source srcset="https://abridge.netlify.app/overview-rich-content/over9000-640.webp" type="img/webp" />\n  <source srcset="https://abridge.netlify.app/overview-rich-content/over9000-400.webp" type="img/webp" />\n  \n</picture>\n\n\n\n  \n  \n  \n  \n\nGIF\nThe gif shortcode is exactly the same as the video shortcode\n– it takes an array of strings called sources and returns a\n<video> tag. The only difference is in the outermost tag, which has\nfour additional properties: autoplay, loop, muted, playsinline.\nUsing the <video> tag in place of gifs allows for reduced file sizes,\nwhich is especially important in regions where internet is slower or\nless reliable.\nUsage\n{{ gif(sources=["over9000_av1.mp4", "over9000_vp9.webm"]) }}\n\nOutput\n<video autoplay loop muted playsinline>\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000_av1.mp4" type="video/mp4" />\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000_vp9.webm" type="video/webm" />\n  Your browser doesn't support the video tag, which I use in place of .gifs, and/or the video formats in use here – sorry!\n</video>\n\n\n\n  \n  \n  Your browser doesn't support the video tag, which I use in place of .gifs, and/or the video formats in use here – sorry!\n\nAudio\nThe audio shortcode takes a sources array of strings and returns an\n<audio> tag. Each string in the sources array should be a path to an\naudio file of a different type (ogg, mp3, flac, wav, etc).\nThe browser will play the first type it supports, so placing them in order of size smallest to largest will use the least bandwidth if that is your goal.\nUsage\n{{ audio(sources=["over9000.ogg", "over9000.mp3", "over9000.flac", "over9000.wav"]) }}\n\nOutput\n<audio controls>\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000.ogg" type="audio/ogg" />\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000.mp3" type="audio/mp3" />\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000.flac" type="audio/flac" />\n  <source src="https://abridge.netlify.app/overview-rich-content/over9000.wav" type="audio/wav" />\n  Your browser doesn't support the audio tag and/or the audio formats in use here – sorry!\n</audio>\n\n\n\n  \n  \n  Your browser doesn't support the audio tag and/or the audio formats in use here – sorry!\n\n"
},{
"title": "Embedded Youtube Videos",
"url": "https://abridge.netlify.app/overview-embedded-youtube/",
"meta": "Zola has many shortcodes, and new are easily added, this example shows youtube.\n",
"body": "Zola has many shortcodes, and new are easily added, this example shows youtube.\nYoutube\nwith yt(id="the_id_here")\n\nid: the video id (mandatory)\nplaylist: the playlist id (optional)\nclass: a class to add to the
 surrounding the iframe (optional)\nautoplay: when set to "true", the video autoplays on load (optional)\ntitle - set alt title for the iframe (optional, defaults to "Youtube")\ncookie - set to "true" if you want tracking cookies, otherwise it defaults to false.\n\n\n\t\n\n"
},{
"title": "Embedded Vimeo Videos",
"url": "https://abridge.netlify.app/overview-embedded-vimeo/",
"meta": "Zola has many shortcodes, and new are easily added, this example shows vimeo.\n",
"body": "Zola has many shortcodes, and new are easily added, this example shows vimeo.\nVimeo\nwith vm(id="id_here")\n\nid: the video id (mandatory)\nclass: a class to add to the
 surrounding the iframe (optional)\nautoplay: when set to "true", the video autoplays on load (optional)\nloop: when set to "true", the video plays on a loop (optional)\nnoautopause: when set to "true", the video will not autopause (optional)\ntitle - set alt title for the iframe (optional, defaults to "Vimeo")\ncookie - set to "true" if you want tracking cookies, otherwise it defaults to false.\n\n\n\t\n\n"
},{
"title": "Mathematical Notations",
"url": "https://abridge.netlify.app/overview-math/",
"meta": "You can use KaTeX to render mathematical notations.\nYou can enable the $\\KaTeX$ support globally, per-section or per-page basis.\n",
"body": "You can use KaTeX to render mathematical notations.\nYou can enable the $\\KaTeX$ support globally, per-section or per-page basis.\nEnable Globally\nTo enable the $\\KaTeX$ support globally, add math = true under [extra] of the config.toml\nat your site root. Now the katex shortcode will be rendered, you can also add math_auto_render = true\nand every section and page of your site will load the KaTeX autorender extension.\n[extra]\nmath = true\nmath_auto_render = false\n\nPer-section Basis\nTo enable the $\\KaTeX$ support in a particular section, add math = true under [extra] in the [SECTION_NAME]/_index.md.\nNow the katex shortcode will be rendered, you can also add math_auto_render = true\nand the section of your site will load the KaTeX autorender extension.\n+++\n[extra]\nmath = true\n+++\n\nPer-page Basis\nTo enable the $\\KaTeX$ support in a particular page, add math = true under [extra] in the page's\nfrontmatter. Now the katex shortcode will be rendered, you can also add math_auto_render = true\nand the page of your site will load the KaTeX autorender extension.\n+++\n[extra]\nmath = true\nmath_auto_render = true\n+++\n\nIt is a good practice to enable $\\KaTeX$ support on a per-page basis, since this will only load the\nrequired files on that particular page, without affecting the page load speed of other pages.\nIf your site is not math-heavy, please do NOT enable this feature globally or per-section basis.\nUsage\nWrap any valid $\\KaTeX$ syntax with $...$ for inline\nMathematics and $$...$$ for block Mathematics.\nInline Mathematics\nThis is the most beautiful equation I've ever seen:\nUsage\n{% katex(block=false) %} e^{i\\pi}+1=0 {% end %}\n\nOutput\n\n\n\ne^{i\\pi}+1=0\nBlock Mathematics\nSome Mathematics in display mode is fair enough:\nUsage\n{% katex(block=true) %} \\int_0^1 x^2 dx {% end %}\n\nOutput\n\n\n\n\\int_0^1 x^2 dx\nAuto Render Inline Example\n$ e^{i\\pi}+1=0 $\n\n$ e^{i\\pi}+1=0 $\nAuto Render Block Example\n$$\nf(x) = \\int_{-\\infty}^\\infty\\hat f(\\xi)\\,e^{2 \\pi i \\xi x}\\,d\\xi\n$$\n\n$$\nf(x) = \\int_{-\\infty}^\\infty\\hat f(\\xi),e^{2 \\pi i \\xi x},d\\xi\n$$\n"
}]

No directly, no, and the primary goal is still to index from HTML.
There's a little bit of discussion for this in #142, and ultimately this flow will be made possible with the release of #72 by using a NodeJS interface to populate a search index.
(Closing this issue but feel free to jump into either of the linked issues)

Just dropping a notification here that the Node API has shipped in v1.0.0!

That is exciting, I am going to experiment with it once I get some free time, thanks!

Hi! @Jieiku
How is your experiment? Do you have resolve that?

Yes, this was recently implemented in the abridge theme for Zola, I was already making use of a node script in the abridge theme so that made things a little more staightforward, this was actually initially implemented by @Hysterelius here: https://github.com/Jieiku/abridge/commit/a7244a2983538f373c0af2ecfa4d6377584b8063

...thank you reply ... I want to try to use this JS for Jekyll static site generator.. What do you think this is good idea?

I have never used jekyll but the pagefind node api seems versatile enough that it should work with any static site generator if your willing/able to do the work implementing it and using npm/node is not a problem.

The demo can be seen here https://jieiku.github.io/abridge-pagefind/


Value for CommandID parameter

[Enter feedback here]
In the "Powershell" section the CommandID parameter value should probably use 'RunShellScript' instead of 'RunPowerShellScript'. Btw, it should be worth mentioning that the "ScriptPath" value is relative to the location where the command is executed.

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

ID: 792f4871-0d07-624f-7daf-02de97121e13
Version Independent ID: b70d481f-b351-bb38-cb49-1cda63422968
Content: Run shell scripts in a Linux VM on Azure - Azure Linux Virtual Machines
Content Source: articles/virtual-machines/linux/run-command.md
Service: virtual-machines
GitHub Login: @bobbytreed
Microsoft Alias: robreed

@BicoGH
Thanks for the feedback! I have assigned the issue to content author to check and update the document as appropriate.

@bobbytreed
Can you please check and add your comments on this doc update request as applicable.

updated the doc.
Changes will go live after a few hours.
#please-close


[WIP] fix(package.json): add main field

Pending...
Fix #12

Thanks again!

:tada: This PR is included in version 2.0.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Enable 3.10-dev CI builds

Summary
As a preparation for #1003 fix, this pull request enables CI builds with the latest version of Python 3.10.
Category (place an x in each of the [ ])

[ ] slack_sdk.web.WebClient (sync/async) (Web API client)
[ ] slack_sdk.webhook.WebhookClient (sync/async) (Incoming Webhook, response_url sender)
[ ] slack_sdk.models (UI component builders)
[ ] slack_sdk.oauth (OAuth Flow Utilities)
[ ] slack_sdk.socket_mode (Socket Mode client)
[ ] slack_sdk.audit_logs (Audit Logs API client)
[ ] slack_sdk.scim (SCIM API client)
[ ] slack_sdk.rtm (RTM client)
[ ] slack_sdk.signature (Request Signature Verifier)
[ ] /docs-src (Documents, have you run ./docs.sh?)
[ ] /docs-src-v2 (Documents, have you run ./docs-v2.sh?)
[ ] /tutorial (PythOnBoardingBot tutorial)
[x] tests/integration_tests (Automated tests for this library)

Requirements (place an x in each [ ])

[x] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've run python setup.py validate after making the changes.

It seems installing the runtime takes a bit long (4 minutes):

I won't enable 3.10-dev builds for this project.


crust_peer example - potential redundant connections?

Testing environment : Ubuntu 15.04 / rustc 1.2.0-nightly (2015-06-09) - 20 x crust_peer nodes started.
The first node on the networks has 38 connected nodes>
Enter command (stop | connect <endpoint> | send <endpoint> <message>)>
Connected to peer at Tcp(V4(<IP_ADDRESS>:38237))
38 connected nodes: Tcp(V4(<IP_ADDRESS>:41734)) Tcp(V4(<IP_ADDRESS>:38087))
Tcp(V4(<IP_ADDRESS>:41743)) Tcp(V4(<IP_ADDRESS>:38096)) Tcp(V4(<IP_ADDRESS>:41751))
Tcp(V4(<IP_ADDRESS>:38104)) Tcp(V4(<IP_ADDRESS>:41759)) Tcp(V4(<IP_ADDRESS>:38112))
Tcp(V4(<IP_ADDRESS>:41767)) Tcp(V4(<IP_ADDRESS>:38120)) Tcp(V4(<IP_ADDRESS>:41776))
Tcp(V4(<IP_ADDRESS>:38129)) Tcp(V4(<IP_ADDRESS>:41784)) Tcp(V4(<IP_ADDRESS>:38137))
Tcp(V4(<IP_ADDRESS>:41792)) Tcp(V4(<IP_ADDRESS>:38145)) Tcp(V4(<IP_ADDRESS>:41800))
Tcp(V4(<IP_ADDRESS>:38153)) Tcp(V4(<IP_ADDRESS>:41808)) Tcp(V4(<IP_ADDRESS>:38161))
Tcp(V4(<IP_ADDRESS>:41820)) Tcp(V4(<IP_ADDRESS>:38173)) Tcp(V4(<IP_ADDRESS>:41828))
Tcp(V4(<IP_ADDRESS>:38181)) Tcp(V4(<IP_ADDRESS>:41834)) Tcp(V4(<IP_ADDRESS>:38187))
Tcp(V4(<IP_ADDRESS>:41842)) Tcp(V4(<IP_ADDRESS>:38195)) Tcp(V4(<IP_ADDRESS>:41852))
Tcp(V4(<IP_ADDRESS>:38205)) Tcp(V4(<IP_ADDRESS>:41860)) Tcp(V4(<IP_ADDRESS>:38213))
Tcp(V4(<IP_ADDRESS>:41868)) Tcp(V4(<IP_ADDRESS>:38221)) Tcp(V4(<IP_ADDRESS>:41876))
Tcp(V4(<IP_ADDRESS>:38229)) Tcp(V4(<IP_ADDRESS>:41884)) Tcp(V4(<IP_ADDRESS>:38237))

The other 19 all have 2 >
Enter command (stop | connect <endpoint> | send <endpoint> <message>)>
Connected to peer at Tcp(V4(<IP_ADDRESS>:40740))
2 connected nodes: Tcp(V4(<IP_ADDRESS>:40740)) Tcp(V4(<IP_ADDRESS>:40740))

That's weird, crust already has code to avoid duplicates even before you created the issue: https://github.com/maidsafe/crust/blob/2231aa2aeae069f61b7fe3f8a38fa5ff18d50cb2/examples/crust_node.rs#L59-61
I examined your example and I found no duplicate node. The sorted output is easier to spot:
Tcp(V4(<IP_ADDRESS>:41734))
Tcp(V4(<IP_ADDRESS>:41743))
Tcp(V4(<IP_ADDRESS>:41751))
Tcp(V4(<IP_ADDRESS>:41759))
Tcp(V4(<IP_ADDRESS>:41767))
Tcp(V4(<IP_ADDRESS>:41776))
Tcp(V4(<IP_ADDRESS>:41784))
Tcp(V4(<IP_ADDRESS>:41792))
Tcp(V4(<IP_ADDRESS>:41800))
Tcp(V4(<IP_ADDRESS>:41808))
Tcp(V4(<IP_ADDRESS>:41820))
Tcp(V4(<IP_ADDRESS>:41828))
Tcp(V4(<IP_ADDRESS>:41834))
Tcp(V4(<IP_ADDRESS>:41842))
Tcp(V4(<IP_ADDRESS>:41852))
Tcp(V4(<IP_ADDRESS>:41860))
Tcp(V4(<IP_ADDRESS>:41868))
Tcp(V4(<IP_ADDRESS>:41876))
Tcp(V4(<IP_ADDRESS>:41884))
Tcp(V4(<IP_ADDRESS>:38087))
Tcp(V4(<IP_ADDRESS>:38096))
Tcp(V4(<IP_ADDRESS>:38104))
Tcp(V4(<IP_ADDRESS>:38112))
Tcp(V4(<IP_ADDRESS>:38120))
Tcp(V4(<IP_ADDRESS>:38129))
Tcp(V4(<IP_ADDRESS>:38137))
Tcp(V4(<IP_ADDRESS>:38145))
Tcp(V4(<IP_ADDRESS>:38153))
Tcp(V4(<IP_ADDRESS>:38161))
Tcp(V4(<IP_ADDRESS>:38173))
Tcp(V4(<IP_ADDRESS>:38181))
Tcp(V4(<IP_ADDRESS>:38187))
Tcp(V4(<IP_ADDRESS>:38195))
Tcp(V4(<IP_ADDRESS>:38205))
Tcp(V4(<IP_ADDRESS>:38213))
Tcp(V4(<IP_ADDRESS>:38221))
Tcp(V4(<IP_ADDRESS>:38229))
Tcp(V4(<IP_ADDRESS>:38237)

The other 19 all have 2 >

OTOH, this may be, indeed, a problem.

And it's not weird if a node establish three connections to some another node under localhost. Each connection will use a different network card (virtual loopback, read network card...).

Yes agreed, will close this issue for now. I think Prakash actually got the code done while we were in last sprint. So thanks for looking around/


sqlalchemy.exc.OperationalError whenever I run main.py from inside the /backend/ directory

Since sqlite is using the relative URL (with 3 slashes after colon) SQLITE_DATABASE_URL = "sqlite:///backend/database/aixplora.db" as declared inside backend\database\database.py. running the main.py while inside /backend/ directory is causing an sqlalchemy.exc.OperationalError. A sample log of this error is given below:
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) unable to open database file
(Background on this error at: https://sqlalche.me/e/20/e3q8)

and suggested by the URL given in the log, the problem is not with sqlalchemy.

The OperationalError is the most common (but not the only) error class used by drivers in the context of the database connection being dropped, or not being able to connect to the database. For tips on how to deal with this, see the section Dealing with Disconnects.

I overcame this by running
# ./aixplora

python3 ./backend/main.py

instead of
# ./aixplora/backend

python3 ./main.py

I'm not sure if this is a big threat right now but it should be solved via os and os.path module in the future.

Hi, by running python3 backend/main.py there shouldn't be any error?

Yes that's what I encountered

The README says run it via python3 backend/main.py it should be clear. If you want to refactor it, I am happy to merge your PR!


Add diagrams from flyers to the API section

include screenshot of swagger ui and a couple sentences on use of swagger/openapi

flyer diagrams were of models not operations. will use the swagger screenshots of operations.


Badge for post-publish pipeline

I think we can close this, it was fixed by https://github.com/cloudfoundry-incubator/kubecf/commit/3cf3285245d8c3051cce5a9f35c436233051565e


Sequel Pro: "Authentication plugin 'caching_sha2_password' cannot be loaded"

While attempting to connect to Sequel Pro, I ran into the following error:

I'm currently trying to figure out the source of the problem.

I was able to "fix" this by replacing the ~/Library/Application\ Support/Sequel\ Pro/Data/Favorites.plist with the file that I had received as a Sequel Pro export.  I'm running Sequel Pro 1.1.2 on OS X High Sierra (10.13.6).


Removed the space before the start of the line.

From https://github.com/Merrit/kde-dolphin-open-vscode/issues/11

<- some silly lemon deleted the forked repo. I don't trust reddit any more aaa
Anyway, remember to delete the spaces.


Make sure libev is available

Fixes #152.
Signed-off-by: Thomas Leonard<EMAIL_ADDRESS>

This performs the test @djs55 suggested in the Dockerfile to make sure we don't build a binary that uses select. This fix shouldn't be needed once @avsm has updated the ocaml/opam:alpine image to support libev by default, but doesn't do any harm.


Lint precommit

Adds pre-commit script for running linter with husky.
Run npm run prepare, and then that should enable the precommit hook.

I think @mudrila set something like this up before, but we ended up reverting it, but I don't remember why..  @mudrila do you remember?

@sethhrbek I'm going to merge this in, just to move it along!
@decent-dao/fractal see the PR description for Husky usage!


Use correct ignore string in Luhn test

When using TestCase, the Ignore string must be exactly equal to "Remove to run test case". Otherwise, the CI servers don't run the test.

@ErikSchierboom I assume the C# track has the same issue then since I made the same change in both tracks. Are you going to do the change there as well?

Yes I will, later :)

Sounds good, thanks for fixing this for me @ErikSchierboom!

 You can run the test script locally too by the way, by running build.cmd or build.sh. That's how I found out :)

Good to know!


Change extract to unpack

Arguably more intuitive as unpack is the direct opposite to pack
Closes #4

easage_extract.rs will need to be renamed to easage_unpack.rs and this line should probably be updated.

Good catch, I forgot to search/replace for capitalised Extract.


Default shuffle buffer size 2GB

but illegal core dump issue needs to be addressed

It comes from main, not from this branch.


Support passing generic to child components

What problem does this feature solve?
We can pass type parameter in TypeScript via generics:
function <T extends string | number>doSth(value:T): T[] {
  if (value === "123") {
    return toArray(123);  // throw an error, number[] is not compatible with T[]
  }
 return toArray<T>(value)
}

But we cannot do so in Vue template.
<my-select v-model="selectedFruit">
  <my-option value="🍎" />
  <my-option value="🍌" />
  <my-option value="🐘" /> // should throw an error, 🐘 is not compatible with selectedFruit
</my-select>

To make this possible, we need the ability to restrict what components can be in slot：
defineSlots({
   default: {
     accept: MyOption<T>
  }
})

<my-select v-model="selectedFruit">
  <my-option value="🍎" />
  <my-option value="🍌" />
  <my-option value="🐘" /> // 🐘 is  not compatible with selectedFruit
</my-select>

also, now we have ability to prevent developer from putting unexpected components in slots!
<my-select v-model="selectedFruit as any">
   <my-radio v-model="radioValue" /> // throw an error, my-radio should not be here
</my-select>

Sometimes TypeScript cannot infer acutal type we want:
<my-button-group :buttons="['🍚', '🍗']" @click="handleUpdate" />

type Foods = '🍚' | '🍗';
const handleClick= (food: Foods) => {
   console.log(food);
}

buttons will infer as string[], and @click handle is (value: string) => void, but we need Foods[] and (value: Foods) => void
So we also need ability to specify what type we want:
<my-button-group[Foods] :buttons="['🍚', '🍗']" @click="handleUpdate" />

What does the proposed API look like?
For template:
<my-select[typeof selectedFruit] v-model="selectedFruit">
   <my-option value="🍎" />
   <my-option value="🍌" />
   <my-option value="🐘" /> // 🐘 is not compatible with selectedFruit
</my-select>

<my-select v-generics="typeof selectedFruit" v-model="selectedFruit">
   <my-option value="🍎" />
   <my-option value="🍌" />
   <my-option value="🐘" /> // 🐘 is not compatible with selectedFruit
</my-select>

For slot type definition:
defineSlots({
   default: {
     accept: MyOption<T>
  }
})

I have same requirements

Much needed feature

附议。很需要这个功能，团队不方便用jsx
Much needed feature

+1 for this

I just stumbled upon this issue, but unfortunately, there's no solution yet. This issue has been open for over a year; it's quite a specific problem and might not be resolved anytime soon..


feat: @Length Annotation for String Parameters

Hello,
I am proposing to add a @Length annotation that would create a minimum/maximum length for Strings. I'm pretty sure this is natively supported by brigadier, but I'm not sure. I couldn't find an existing annotation that exists for this purpose, so I'm proposing a new one.
It would look like this:
public @interface Length {

    int min() default 0;

    int max() default Integer.MAX_VALUE; // Something like that
}

Could be used in scenarios like this:

@Command("nick")
@Description("Set a Player's Nickname")
public void nickPlayer(Player player, @Length(min = 3, max = 32) String name) {
    player.setDisplayName(name);
}

Also: I would recommend creating a build script that automatically updates the JavaDocs instead of manually copying files.

This sounds like an excellent use case for parameter validators, see https://github.com/Revxrsal/Lamp/wiki/Parameter-validators. There's a good chance it may be natively added later as it could be used by brigadier.

Also: I would recommend creating a build script that automatically updates the JavaDocs instead of manually copying files.
Thanks, I'll take a look. They are currently neglected as I believe most people either look at the wiki, examples, or inspect code themselves.