Update to PKCS#11 v3.0

PKCS#11 v3.0 has been published as OASIS standard and as a result Pkcs11Interop can be updated to officially support this version of PKCS#11 specification. However I have currently no intention to do that because:

I'm not aware of a real-world PKCS#11 library implementing this version of specification
I personally don't need to use any of the new features from this version of specification

These intentions might of course change over the time or if a vendor willing to sponsor this work is found.

There's seems to be an ongoing effort to add PKCS#11 v3.0 support to ykcs11: https://github.com/Yubico/yubico-piv-tool/pull/308

Utimaco also upgraded to v3.0. As far as I'm aware, their R2 version won't get any updates anymore.

Utimaco also upgraded to v3.0. As far as I'm aware, their R2 version won't get any updates anymore.

Actually PKCS#11 v3.0 has real world usages. For example using CKM_EDDSA for generating EDDSA keypair for Cardano blockchain wallets.
I hope you decide to upgrade to v3.0.

Hope Pkcs11Interop will support soon the PKCS11 v3.0 specification. @VahidShir is right. The EDDSA algorithm for example is already widely used in many real world scenarios

Hi, just curious if there are any plans to update to PKCS11 v3.0 in the near future?


Normalise GitHub Actions workflow names

The names are interpreted by an automation, for which is easier to have common naming, and naming without spaces.

bors r+


HF Trainer compatibility

Quick question regarding the compatibility of ProGen2 with the HuggingFace Trainer - I would like to implement distributed strategies, deepspeed etc, and the Trainer class with accelerate is able to handle much of that stuff under the hood, so I was wondering if this version of ProGen2 could be used in the same way as other AutoModelForCausalLM's?

I have never experimented with this, but I assume it should be possible. The progen2 architecture is the same as GPT-J, which was quite big on HF, so I would think it would be supported. Originally I removed the functions for parallelizing model layers across multiple GPUs to decrease complexity, but now I added them again (commit 1dd8ed4181d8), so you can go ahead and try running it.

Ok so I've been playing around with your models and I think I've figured out how to integrate it nicely with HF Trainer. I've attached a jupyter notebook with a minimal example of what I mean. With this, I've been able to use Deepspeed offloading, fp16, etc. by just passing the args to TrainingArguments!
minimal_example.zip


FireworkMetaMock::hasPower not implemented

Is there an existing issue for this?

[X] I have searched the existing issues

Are you using the latest version of MockBukkit?

[X] I am using the latest version of MockBukkit.

Minecraft Version
1.21
Describe the bug
FireworkdMetaMock has the following implementation (MockBukkit-1.21-4.7.0)
	@Override
	public boolean hasPower()
	{
		// TODO Auto-generated method stub
		throw new UnimplementedOperationException();
	}

Reproducible Test
    @Test
    public void testRocketHasPower() {
        ItemStack rocket = ItemStack.of(Material.FIREWORK_ROCKET);
        rocket.editMeta(FireworkMeta.class, m -> m.setPower(5));
        assertTrue(((FireworkMeta) rocket.getItemMeta()).hasPower());
    }

Anything else?
No response

Seems to have been fixed


Properly set HEAD when a repo is created with a non-master default branch

This fixes an issue I noticed with #10803: when you create a repo with a non-master default branch, gitea doesn't change the remote ref HEAD, so it still points at refs/heads/master. As a result, cloning my repos gives me error messages and doesn't check out the desired default branch, so I need to manually check it out after cloning.

:rocket:

Please send backport


[Bug]: Doesn't work with Super Bear Adventure

All of the following criteria must be met

[X] Changed the title so that it doesn't just says "[Bug]: "
[X] I have searched the GitHub issues for my bug, even in the closed issues.

All of the following are optional to answer

[X] Tried reinstalling the app.
[X] Tried reinstalling LemonLoader.
[x] Tried restarting the device.

Describe the issue.
I tried to patch the game Super Bear Adventure. The patch worked, but when I sideload it onto my Huawei MediaPad AGS-W09, it says "App not installed."
I made the patch on my computer since the APK wasn't compatible with my tablet, which runs Android 8.
I used the "Continue without a device" option to load the game APK. It patched successfully, but it didn’t install. When I tried the "Continue with a device" option, it didn’t work because the device didn’t show up in LemonLoader, even after I reopened the EXE.
24-10-9_18-11-3.log
Did you attach your log file?
Yes, I attached my log file to the text box above.

I can't replicate this, my assumption is that your tablet's Android version is too old to support Lemon, and I have no intention on supporting older versions of Android.


added configuration for payment-method logo

Issue Reference
added configuration for payment-method logo

@shivendra-webkul
As I have check ed the PR and found that translation is missing in Arabic, please check and update,
https://prnt.sc/RChC8wtUBbXR
https://prnt.sc/-muWoxGZIr3p

@ashishkumar-webkul It's not possible to translate "Choose file" and "no file chosen" labels, as those are native browser elements and depend on browser's language.

As per checking the concern related to the payment method logo choose buttion and text related concern it is based on the browser Langugae related concern. Please check the screenshot here
New configuration has been added now it is working fine, please check the screenshot here


Weired memory allocation in mxnet python module

I built mxnet(949300d15957299d99d7c32fedecdede5619cc26) from source on a virtual machine running ubuntu 16.04, without gpu support. When I tried "import mxnet" in python, it throws a "std::bad_alloc" exception and aborted. Using strace, I found out that this was caused by some weired memory allocations(the mmap() calls). It seems the python process was trying to allocate<PHONE_NUMBER>36 bytes(about 164GB) of memory when importing the mxnet module. Why is this happening?
mmap(NULL,<PHONE_NUMBER>36, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
brk(0x290b2b0000)                       = 0x15da000
mmap(NULL,<PHONE_NUMBER>08, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)
mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x7f035910c000
munmap(0x7f035910c000, 49233920)        = 0
munmap(0x7f0360000000, 17874944)        = 0
mprotect(0x7f035c000000, 135168, PROT_READ|PROT_WRITE) = 0
mmap(NULL,<PHONE_NUMBER>36, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = -1 ENOMEM (Cannot allocate memory)

Environment info
Operating System: Ubuntu 16.04
Compiler: gcc 5.4.0
Package used (Python/R/Scala/Julia): Python
MXNet commit hash (git rev-parse HEAD): 949300d15957299d99d7c32fedecdede5619cc26
Python version: python 2.7.12
Error Message:
terminate called after throwing an instance of 'std::bad_alloc'
what():  std::bad_alloc
Aborted (core dumped)
Minimum reproducible example
import mxnet
What have you tried to solve it?

The 0.8.0 release is ok.

@antinucleon Is this the same problem?

Is this always reproducible?

yes, exactly same pfoblem
On Thu, Jan 19, 2017 at 13:05 Eric Junyuan Xie<EMAIL_ADDRESS>wrote:

Is this always reproducible?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dmlc/mxnet/issues/4729#issuecomment-273898309, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABM13hGqRBJ1gj9c0j0XBz4zypLxdKI5ks5rT9AOgaJpZM4Ln_VL
.

--
Sent from mobile phone

@antinucleon So this happens without amalgamation too? Can you reproduce it?

@piiswrong there are some randomness to reproduce this

@antinucleon can u try this patch? #4695 this fixed another problem that gpunum is not initialized when CUDA is not compiled into. If gpunum is huge, it can cause allocating big chunk of memory.

This should now be fixed


Should births_by_date multiplied by 2?

In Chapter 3's "Pivot Tables section" and Chapter 4's "Text and Annotation" section, when computing the births by date using:
  births_by_date = births.pivot_table('births', [births.index.month, births.index.day])

Should each value be multiplied by 2 since male and female births are counted on separate rows? So should it be:
  births_by_date = (births.pivot_table('births', [births.index.month, births.index.day])) * 2

instead?

Thanks for the comment! I think you're right that it's off by 2, but a clearer way to accomplish that would be to use aggfunc='sum' rather than the default aggfunc='mean'.

Just changing aggfunc seems not right either, it should group by dates first,  sum up  the two rows of each day's male and female births then take the aggfunc='mean'. I could not figure out how to make a DataFrame object out of births.groupby(['year', 'month', 'day']).sum() with the same year/month/day index. So make the whole births_by_date times 2 seems the easiest way. Mathematically it is explainable, conceptually it could be better.


Feature request: ability to define masks that allow for varying thresholds

Background
Original idea found in comment here.
Always best to avoid phrasing things as an X/Y problem so going to expose the use case: we have sections of the PDFs we generate that contain signatures and in our test suite it's possible for this (and certain other areas like initials) to occasionally be a few pixels out based on the device and OS the signature or initials were drawn on.
Since our core product is producing legally compliant PDFs, we still want diffs to fail if even something as simple as a comma is missing, given that a comma can change the meaning of a sentence and we need to ensure our legal copy matches what we get from the lawyers exactly.
This feature would meet our need to maintain a 100% pixel match for the vast majority of the content on the PDF.
User Story
As a test engineer,
I would like to be able to specify masks that allow for varied thresholds,
so that I can reduce thresholds for specific sections of a PDF/PNG instead of the entire document.
Acceptance Criteria

test writers can specify a threshold-mask (or some other name) which marks a designated area as having a seperate threshold to that of the base one
when comparing the snapshots areas inside of a threshold-mask should use the specified threshold and not the global threshold

Nice to Haves
If a snapshot fails based on a pixel difference from inside of a threshold-mask it wouldbe nice to  indicate this in some way.
Some ideas:

in the resulting diff based on the threshold-mask properties
in the resulting console output
programatically so that the test can act on it by adding a new signature for the comparison method that allows specifying a callback function so the returned result of the diff can either be a boolean OR a callback method that exposes more info through via an object passed into the callback function

Are you willing to work on this yourself?
Yes, ties in very well with our business needs, I'd need to go through the correct channels at work but would be happy to give this a go.

All contributions are welcomed!
A good start would be to look at compare-images.ts. I've linked to the diff line. Right before it you have the expected and current images.
The biggest challenge would be to come up with a nice, simple and expandable API.

Great! I have made a ticket in our project management tool and will be pushing it, most likely won't be until Q1 next year, but I'll fork your repo and create a PR pointing back in and will make sure the API suits whatever standards and patterns you'd like observed this tool, I did my homework and IMO this is the best in class option for PDF comparisons based on what's out here, so happy to contribute when and where I can


[FEATURE] add hourly rate for developer profile

Thank you @thecalcc - I left a few comments, can you please add the hourly rate displayed in the developers.html and view-developer-profile.html as well please?
only when the hourly rate is set (>0) and only visible for recruiter profiles
in the template could do something like this
...
{{ if and .IsUserRecruiter (ne .DeveloperProfile.HourlyRate 0) }}{{ .DeveloperProfile.HourlyRate }}USD/hour{{ end }}
...

thank you - please allow some time for me to test and approve


cannot clear kivy console

clear command returns  on Linux

text input listen 'clear' or 'cls' command, and then clear the history text view


TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.
If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.
If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/109186

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/109261

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/111212

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/113507

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114007

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114164

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/114545

Triggering TagBot for merged registry pull request
This extra notification is being sent because I expected a tag to exist by now, but it doesn't.
You may want to check your TagBot configuration to ensure that it's running, and if it is, check the logs to make sure that there are no errors.

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/115293

Triggering TagBot for merged registry pull request: https://github.com/JuliaRegistries/General/pull/115539


load error

Hey, I tried to run Example usage for 1 (uBin_wrapper.sh -s scaffolds.fasta -p pdbg -r1 BG_1_S1_L001_interleaved_trim_clean.PE.1.fastq.gz -r2 BG_1_S1_L001_interleaved_trim_clean.PE.2.fastq.gz -e diamond -t 10 -b das_tool_DASTool_scaffolds2bin.txt).
I encountered following error:
from /home/anaconda3/envs/uBin_input_generator_pyt37/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require' /home/anaconda3/envs/uBin_input_generator_pyt37/lib/ruby/2.5.0/rubygems/core_ext/kernel_require.rb:59:in require': cannot load such file -- nu (LoadError)
There are kernel_require.rb and kernel_gem.rb under the directory but somehow couldn't be loaded. Do you know what could be the reason?
Thanks!
Alex

Hi Alex,
Thank you for trying out uBin. Your ruby version does not seem to find the 'nu' gem. Since this gem is not available via the standard ruby repositories at the required version, we supplied this gem directly within the github repository (the 'nu-2.0.1.gem'  file). You can install this gem directly via (excerpt form the README):
================
For the gem nu, the required version 2.0.1 is not available in public repositories and thus nu.2.0.1 is supplied as the gem file nu-2.0.1.gem along with the wrapper. You can find the license for the nu gem at https://github.com/bcthomas/mgnu. The gem is installed by the following command:
$ gem install --local nu-2.0.1.gem
This command assumes that you have loaded the required ruby 2.3 version and that the nu-2.0.1.gem file is in your current directory (otherwise please supply the entire PATH to the gem).
Could you let me know if this fixes your problem?
Best,
Till


Improve the link between action version and docker image version

Build Dockerfile seemlessly
It would be nice if we could read a local variable (DEBUG or BUILD_FROM_DOCKERFILE), (an action parameter that could be set  set as repository variable or hardcoded in the workflow), that would switch from pulling the image to building it from the Dockerfile.
I'm sure we're not the first ones doing that, so maybe we can reuse something.
Use correct version
I believe that, as of today, using a release tag of the version still ends up using the latest docker version, so it's probably quite useless.

It would be nice if we could read a local variable that would switch from pulling the image to building it from the Dockerfile.

I have tried a bit and here are my results so far: We have two options: Either we use (as currently) using: docker or using: composite.
For a docker action there seems to be no way to include any conditioning like if queries. Also the value for image: seems to have to be hardcoded. Otherwise we could have just used an input parameter there too, which defaults to docker://ewjoachim/python-coverage-comment-action:latest and can be changed to Dockerfile. However, this does not work in my tests.
If we use a composite action, we can use if-queries and also Docker images with environment can be used by simply specifying published Docker image in uses:. However, this does not work with the local Dockerfile.
That's why I thought we could just build and run the Docker image locally for the debug case:
runs:
  using: "composite"
  steps:
    - name: Run latest published version
      if: ${{ inputs.BUILD_FROM_DOCKERFILE == 'false' }}
      uses: docker://ewjoachim/python-coverage-comment-action:latest
      env:
        GITHUB_TOKEN: ${{ inputs.GITHUB_TOKEN }}
        GITHUB_PR_RUN_ID: ${ inputs.GITHUB_PR_RUN_ID }}
        COMMENT_TEMPLATE: ${ inputs.COMMENT_TEMPLATE }}
        COVERAGE_DATA_BRANCH: ${ inputs.COVERAGE_DATA_BRANCH }}
        COMMENT_ARTIFACT_NAME: ${ inputs.COMMENT_ARTIFACT_NAME }}
        COMMENT_FILENAME: ${ inputs.COMMENT_FILENAME }}
        MINIMUM_GREEN: ${ inputs.MINIMUM_GREEN }}
        MINIMUM_ORANGE: ${ inputs.MINIMUM_ORANGE }}
        MERGE_COVERAGE_FILES: ${ inputs.MERGE_COVERAGE_FILES }}
        VERBOSE: ${ inputs.VERBOSE }}

    - name: Run Dockerfile
      if: ${ inputs.BUILD_FROM_DOCKERFILE == 'true' }}
      run: |
        docker build --file Dockerfile --tag coverage-comment-action .
        docker run coverage-comment-action
      shell: bash
      env:
        GITHUB_TOKEN: ${{ inputs.GITHUB_TOKEN }}
        GITHUB_PR_RUN_ID: ${ inputs.GITHUB_PR_RUN_ID }}
        COMMENT_TEMPLATE: ${ inputs.COMMENT_TEMPLATE }}
        COVERAGE_DATA_BRANCH: ${ inputs.COVERAGE_DATA_BRANCH }}
        COMMENT_ARTIFACT_NAME: ${ inputs.COMMENT_ARTIFACT_NAME }}
        COMMENT_FILENAME: ${ inputs.COMMENT_FILENAME }}
        MINIMUM_GREEN: ${ inputs.MINIMUM_GREEN }}
        MINIMUM_ORANGE: ${ inputs.MINIMUM_ORANGE }}
        MERGE_COVERAGE_FILES: ${ inputs.MERGE_COVERAGE_FILES }}
        VERBOSE: ${ inputs.VERBOSE }}

However, the problem here is that the whole thing is then not executed in the action repo, but in the repo in which the action is run. And logically, the files for building the Docker image do not exist there.
So there seems to be a catch for all possibilities I found so far. Do you have any ideas how to fix one of them?

Ha funny, I did more or less the same tests as you yesterday in the train (https://github.com/ewjoachim/test_repo_actions_docker_image)
I tried something like:
image: ${{ inputs.DEBUG && 'Dockerfile' || ('docker://ewjoachim/python-coverage-comment-action:' + github.action_ref) }}
and found that while inputs are defined inside the env subdict, it's not defined outside of it.
Maybe another solution could be to always build from Dockerfile, but use a FROM image that has as many things as possible that's already pre-built so that:

Most of the time, we'll just copy the latest version of the python code, deps will be ok
Hopefully, GitHub might even be able to use a docker build cache and make even that last step instantaneous
(We'll still need to make sure that if we add a dependency, we'll need to pull it, so we'll have to roughly version the base image itself)


Vendor ID and Class ID conditions generated incorrectly.

Vendor ID and Class ID should have NUL arguments and operate on parameters, however the current manifest generator places Vendor ID and Class ID in arguments.

Additional detailed information is available in https://mailarchive.ietf.org/arch/msg/suit/AU8wWOHp0oJuloBiKB0vg-64BTg/


CI - migrating to github actions

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@5300adc). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             main        #1   +/-   ##
========================================
  Coverage        ?   100.00%
  Complexity      ?        47
========================================
  Files           ?        15
  Lines           ?       103
  Branches        ?         0
========================================
  Hits            ?       103
  Misses          ?         0
  Partials        ?         0

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 5300adc...79f353f. Read the comment docs.


Add support for appsettings.json

It should be possible to configure Plugin Framework using a configuration file (appsettings.json or some other json-file).
Add this functionality into a new library. The AspNet-project should reference this new library as the functionality is most likely used with ASP.NET Core.

Hey is anyone adding support for this? If not I am thinking of trying to add implement it myself 😄,
if I can try to implement it (my first contribution to oss) could I ask some questions regarding the implementation?
Thanks for your time and awesome project by the way, just what I wanted, saw it on blazor community standup.

@mikoskinen hey I started this in my free time in a worker service.
I added really basic implementation that is as follows:
Settings classes that represent the settings inside the configuration:
public class PluginFrameworkSettings
{
    public List<CatalogueConfiguration>? Catalogs { get; set; }
}

public class CatalogueConfiguration
{
    public string? Type { get; set; }

    public string? Path { get; set; }

    public TypeFinderCriteria? SearchCriteria { get; set; }
}

I believe Creating another class to replace TypeFinderCriteria would be better and then an object type for the provided options depending on the type of the catalog.

A problem I came across that might need a separate issue.
As I was implementing the 2 catalogs (Assembly and Folder) using the aspnetcore package I noticed that the services are added via a hosted service (backgroundservice), this actually creates a racing problem.
Aspnet will block the thread until the first await is hit, then it just keeps executing the app and the service is left in the background. I noticed this because I was adding another hosted service that was using an Interface from the plugin but got the error that no interface had been registered since the first service did not finish in time.
To fix this I actually created an extension method on IHost that executes the same logic (after .Build() before Run()) so the services are all there but the app has not executed yet.
I did it with GetAwaiter().GetResult() since the tasks just return Completed and see if it works but I think having a synchronous and asynchronous like the Run method would be the best for all. Another way would be to do the searching etc just when the AddPluginFramework(IConfiguration configuration) method is executed but I don't know if it's appropriate.
I believe the aspnetcore problem should go to another issue in which I could contribute to the new methods. I could also implement a static class (PluginCatalog) that will do this for any app like a console application.
Sorry for the long post 😄🥔

Thank you for your work and feedback, really appreciate it!
You're right that a background service is used to initialize the catalogs. The thinking behind this was that as ASP.NET Core 3.1 runs the hosted services before the application starts accepting requests, that provides us a good place to initialize the catalogs. The app startup should wait until the catalogs are initialized and then continue.
We would like to avoid the situation where developer has to touch Program.cs. If possible, all the configuration should be done through ConfigureServices.
I wonder if this would be doable by using something like the following construct. Though I'm not sure if I'm overcomplicating this :)

Add the CatalogConfiguration which represents a single catalog configuration like you have done.
Add IPluginCatalogConfigurationProvider interface. This has a single method, that returns List of CatalogConfiguration.
Create something like "AppConfigurationPluginCatalogConfigurationProvider" that implements IPluginCatalogConfigurationProvider. This class takes IConfiguration as dependency. In this class you parse the configuration file using Configuration.GetSection etc. so that it can return a list of CatalogConfiguration based on the configuration.
Additionally, we could add something like "OptionsPluginCatalogConfigurationProvider" where IEnumerable of IOptions of CatalogueConfiguration can be injected.
Add PluginCatalogProvider class which can be used to get all the catalogs and to add new ones. It takes IEnumerable of IPluginCatalog thourgh constructor. Not sure if this other methods than Add(IPluginCatalog) and GetAll().
Every place where IEnumerable IPluginCatalog is currently used is replaced with PluginCatalogProvider.
Modify PluginFrameworkInitializer so that instead of IEnumerable pluginCatalogs it gets IEnumerable and PluginCatalogProvider. PluginFrameworkInitializer gets all the catalog configurations from all the providers, creates the actual catalogs and adds them to PluginCatalogProvider. Then all the catalogs are fetched from the PluginCatalogProvider and initialized one by one.

Additional benefit to this is that the developers could then add Plugin catalogs using the IOptions-system, for example:
services.Configure<CatalogueConfiguration>(config => ...);

What do you think? Thanks again for the work you have done with this!

Converting CatalogConfiguration to actual Catalog is also one thing. There can quite many different types of catalogs so I don't think we can have one class taking care of every conversion.
Maybe something like IConfigurationToCatalogConverter with bool CanConvert and IPluginCatalog Convert is needed? Then we could have a bunch of classes implementing the interface.

Converting CatalogConfiguration to actual Catalog is also one thing. There can quite many different types of catalogs so I don't think we can have one class taking care of every conversion.

Maybe something like IConfigurationToCatalogConverter with bool CanConvert and IPluginCatalog Convert is needed? Then we could have a bunch of classes implementing the interface.

Yea when I started I thought that most catalogs might not be configured by a single class, I just wanted the settings to convert to a base class on which I can then build up. I believe it's better to have an IConfigurationToCatalogConverter where we pass the IConfiguration key the catalog has and leave it to a converter to return an IPluginCatalog. This way we could implement one for every catalog in time and just think of their structure. The static method AddPluginFramework that adds the IPluginCatalogs could then have another overload that accepts a func to handle custom PluginProvider types.
I also like the idea of IPluginCatalogConfigurationProvider it would further abstract the logic from the static method I created and could allow for a second method that can accept a custom IPluginCatalogConfigurationProvider etc. So a user could have many options in the end from this or IConfigurationToCatalogConverter to implement custom logic.

So I will create the interface IConfigurationToCatalogConverter and keep the class CatalogConfiguration with the basic type parameter to grab the type of the catalog, then I will just pass the catalog key on which each class can use to grab extra configuration parameters. I will then implement AssemblyCatalogConfigurationConverter and FolderCatalogConfigurationConverter. I will use the Type method of CatalogConfiguration to determine which converter to use.
I will also create IPluginCatalogConfigurationProvider and a class to implement it. Then I will create the static methods that calls it aka AddFrameworkPlugin and an overload that accepts an implementation of the interface.
I named the project Weikio.PluginFramework.Configuration, is this appropriate?
When I have it on my copy of the repo I will open a pull request for further refinements.
For the OptionsPluginCatalogConfigurationProvider and on I got a bit confused but the idea I believe is to use composition for better extensibility right? I think it could be implemented later on a bigger update since I don't see it overlapping with IPluginCatalogConfigurationProvider.

You're right that a background service is used to initialize the catalogs. The thinking behind this was that as ASP.NET Core 3.1 runs the hosted services before the application starts accepting requests, that provides us a good place to initialize the catalogs. The app startup should wait until the catalogs are initialized and then continue.

We would like to avoid the situation where developer has to touch Program.cs. If possible, all the configuration should be done through ConfigureServices.

I get the idea, when I saw it I was like this is great but when I added another hosted service I came across the racing issues.
I will open another issue to elaborate further later tonight when I will have some time and we can discuss maybe a workaround that will be documented and have the appropriate XML comments.

This feature is available in the newly released 1.1.0.


updates

Adds .travis.yml file to track build

The work was done here: https://github.com/numo-labs/lambda-taggable-geonames-indexer


enhance: better delete node

enhance: better delete node
This PR:

adds a preview of delete node when the command is run on a note that will create broken links if deleted

As a follow-up enhancement, various convenience commands to convert broken links will be added.
Pull Request Checklist
You can go to dendron pull requests to see full details for items in this checklist.
General
Quality Assurance

[x] Add a test for the new feature
[x] Make sure all the existing tests pass
[x] Do a spot check by running your feature with our test workspace
[~] If your tests involve running [[manual Testing|dendron://dendron.dendron-site/dendron.dev.qa.test#manual-testing]], make sure to update [[Test Workspace|dendron://dendron.dendron-site/dendron.dev.ref.test-workspace]] with any necessary notes/additions to perform manual test ^9jtWc6ov340p
[ ] After you submit your pull request, check the output of our integration test and make sure all tests pass

NOTE: If you running MacOS or Linux, pay special attention to the Windows output and vice versa if you are developing on Windows

Special Cases

[~] If your tests changes an existing snapshot, make sure that snapshots are updated
[~] If you are adding a new language feature (graphically visible in VS Code/preview/publishing), make sure that it is included in test-workspace. We use this to manually inspect new changes and for auto regression testing

Docs

[x] Make sure that the PR title follows our commit style
[x] Please summarize the feature or impact in 1-2 lines in the PR description
[ ] If your change reflects documentation changes, also submit a PR to dendron-site and mention the doc PR link in your current PR

Special Cases
Git

[x] Make sure your branch names adhere to our commit style [[#^6zdCscSXs1MM]]

All PRs should start with [feat|fix|enhance|]/[{description-of-pr-in-kebab-case}]

eg. feat/add-thisthing

Analytics

[~] If you are adding analytics related changes, make sure the Telemetry docs are updated

Github Issue

[ ] If this pull request is addressing an existing issue, make sure to link this PR to the issue that it is resolving.
[ ] If the resolution comes with a document update, link the docs PR to the issue as well.

related: #963

the line number's don't currently line up because it doesn't take into account the frontmatter

That's right. I should fix that.

the common pattern after seeing this notice is to go to the files and fix the links. the problem is that we then lose access to the quickpick. we should make sure it doesn't dissapear on focus out

The quickpick already ignores focus out. But I think that doesn't make the experience different.
When the quickpick asks for confirmation, the user can either cancel or proceed with the deletion. Regardless of what they choose to do, the preview will be there and they can reference that to go find where the broken links are.
Since we decided that we aren't going to introduce any bulk fix operations to delete node itself yet, delete node will only delete the current open note and show you a preview if there are broken links.
Besides, even if we make the quickpick ignore focus out, the user will eventually bring up the lookup quickpick to navigate to the notes to fix the broken links, which will hide the existing quickpick. As of now, I think we can keep it as is because whatever choices the user makes doesn't have any side effects related to broken links.


Remove link to tweet that doesn't exist any more

Introduced with https://github.com/steipete/steipete.com/commit/bc71d53bf3768176bf9797defbef72f8ccaf107f

Ahh, shame!

And thank you!


Upload image success but image not show and not found(404)

Hi, i  have some issue about uploading the image with filemanager.
When i'm uploading using localhost, it's working fine, but when i upload the project to hosting,there's some bug.
OS System & Version: Windows NT HENRY 10.0 build 16299 (Windows 10) i586
Laravel Version: v5.5.13
File Manager Version: v1.8.3
imagick Extension: Not Install
gd Extension: Install
When upload image, it's says success.

but when i close the ajax, no image viewed. After refresh, the image is show but no image found.

Please i need help :(

@henrythu Can you check if there is any error in console?

does any one find solution for it?

Olá, eu enfrentei o mesmo problema, ai fui olha o arquivo lfm.php em config e vi que o diretório apontava para "public" enquanto no meu servidor estava para "public_html"
Então tente modificar
de:
'base_directory' => 'public',
para:
'base_directory' => 'public_html',
em /config/lfm.php
espero ter ajudado!

Eu estou com o mesmo problema agora, alguem teve alguma solução?

up I have same problem

i had installed fresh version of both laravel and this package , but i have same issue . images upload successfully but not shown anywhere

its storing files in Storage directory of laravel , how can i change it to another directory ?

Just changed 'base_directory' => 'public', to 'base_directory' => 'storage',

Just changed
'base_directory' => 'public', to 'base_directory' => 'storage',
And it worked it charm.

doesn't work . its says :
Disk [storage] does not have a configured driver.
although my public driver is linked to storage already , (php artisan storage:link)
ex : the saved image path is  http://bla.com:1280/storage/photos/1/bla.png

Edit on your .env and check APP_URL


Cannot init at disk root on Windows

Calling  dvc init at the root of some disk (e.g. D:\) under Windows fails with error:
Unexpected error: Absolute path 'D:\\.dvc\\config' is not in git repository at 'D:\\'
Tested with Windows 10 x64.
Steps to reproduce:

Open cmd and move to the root of a disk (e.g. D:\)
Enter git init then dvc init

Hi @CorentinJ !
I was able to reproduce this bug. Already looking into it...

Ok, so the bug is in GitPython(https://github.com/gitpython-developers/GitPython/issues/743). Already sent them a patch, will see how long it takes to merge it. If the new version of GitPython is not going to be ready for our next release I'll just patch it in our code. Leaving this issue open for now.


Typo in example CMakeLists.txt

It seems there shall be main.cpp at
https://github.com/ventZl/arm-bare-rtos/blob/95b13f88c4bb4d54837d82bb38fa48c2535e778e/examples/rp2040/CMakeLists.txt#L49

Fixed in #3


Tutorial: how to access location service

From @sethladd on November 9, 2015 23:57
Copied from original issue: flutter/website#78

Generalizing this a bit, and assigning to self


I can't wait to read your paper,nice work.

Thanks for your solid work.

Thanks for your interest.


[SYSTEMML-497] Specify supported software versions in docs

Specify the supported Java, Scala, Python, Hadoop, and Spark versions
in the documentation.

Refer to this link for build results (access rights to CI server needed):
https://sparktc.ibmcloud.com/jenkins/job/SystemML-PullRequestBuilder/1521/


Build errors encountered after augment-api update

➤ YN0000: src/interfaces/augment-types.ts(328,5): error TS2300: Duplicate identifier 'Data'.
➤ YN0000: src/interfaces/augment-types.ts(329,5): error TS2300: Duplicate identifier 'Data'.
➤ YN0000: src/interfaces/extraDefs/types.ts(21,34): error TS2304: Cannot find name 'PalletDidServiceEndpointsDidEndpoint'.
➤ YN0000: src/interfaces/extraDefs/types.ts(21,34): error TS4033: Property 'serviceEndpoints' of exported interface has or is using private name 'PalletDidServiceEndpointsDidEndpoint'.
➤ YN0000: src/interfaces/extraDefs/types.ts(22,21): error TS2304: Cannot find name 'PalletDidDidDetails'.
➤ YN0000: src/interfaces/extraDefs/types.ts(22,21): error TS4033: Property 'details' of exported interface has or is using private name 'PalletDidDidDetails'.
reference to commit - c08c2d566585939731838b5ee48a8959ec1a6cf9

@smohan-dw, Can I please get some suggestions?

Why are we updating augment-api. The latest chain spec based changes are already updated.

Why are we updating augment-api. The latest chain spec based changes are already updated.

Was this update done after merging the scoring pallet to the develop?

Because, I've noticed that the scoring pallet was merged into the codebase yesterday, while the update of cord.js took place five days ago

this is fixed in develop


i am facing issue with  component , Pre-selected values are not displaying

My componet

{this.permissionMenus(permissionIds)}

Menus list
permissionMenus(permissionIds) {
return this
.props
.fetchedPermissions
.map((permission) => (<MenuItem key={permission.id} insetChildren={true} checked={permissionIds && permissionIds.indexOf(permission.id) > -1} value={permission.id} primaryText={permission.name}/>));
}
i have value permissionIds=[1,2] and these two are part of menu keys , but still values are not getting pre selected . i am using  "material-ui": "^0.19.4"  . see below

Your issue has been closed because it does not conform to our issue requirements.


Remove -PT from base image names

Our initial work to add 1ES PT prerequisites to base images created separate -PT base images. We have since (see #2088) made the -PT base images the only ones we use for the windows.* images we provide for our customers. Should remove -PT from the relevant image and filenames and (after a dotnet-helix-machines-image-generation build, fix references in windows.base.yaml to use the new base image names.
This is a non-urgent clean up item. The names are no longer meaningful but don't break anything.

Release Note Category

[ ] Feature changes/additions
[ ] Bug fixes
[x] Internal Infrastructure Improvements

Release Note Description
Updated the names of some of our base images to remove -PT.

fixed in !38623

second part in !38624 if we accept ^^

done


Plugin not working intermittently

Sorry for the vague issue, but I have been having issues with the plugin recently. I have noticed a couple times a day it stops working. When I make a change it does not get reflected in the actual device (AC unit) but it updates the integration as if it did. I usually reload the integration and it starts working again.
I looked through the logs and haven't seen anything pointing to any errors. The devices do get disconnected every so often. If you need anything else from me let me know. I am running the latest version.

Well i will need more than that. I can't debug that. if i can't reproduce it or have an error log. i can't do nothing my friend!

From what I can tell is that my devices become unavailable at random points throughout the day.
September 20, 2023
Living room heat pump Fan changed to auto
4:41:08 PM - 17 minutes ago
Living room heat pump Fan changed to High
4:16:27 PM - 41 minutes ago
Living room heat pump Status was connected
3:38:48 PM - 1 hour ago
Living room heat pump Hvac changed to cool
3:38:48 PM - 1 hour ago
Living room heat pump Swing changed to Auto
3:38:48 PM - 1 hour ago
Living room heat pump Fan changed to auto
3:38:48 PM - 1 hour ago
Living room heat pump Power turned on
3:38:48 PM - 1 hour ago
Living room heat pump changed to Cool
3:38:48 PM - 1 hour ago
Living room heat pump Status became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump Hvac became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump Swing became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump Fan became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump Power became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump became unavailable
3:38:37 PM - 1 hour ago
Living room heat pump Hvac changed to cool
3:02:14 PM - 2 hours ago
Living room heat pump changed to Cool
3:02:14 PM - 2 hours ago
Living room heat pump Power turned on triggered by service Switch: Turn on
3:02:11 PM - 2 hours ago - Kenny
Living room heat pump Hvac turned off
11:23:30 AM - 6 hours ago
Living room heat pump turned off
11:23:30 AM - 6 hours ago
Living room heat pump Power turned off triggered by service Switch: Turn off
11:23:28 AM - 6 hours ago - Kenny
Living room heat pump Fan changed to auto
11:03:33 AM - 6 hours ago
Living room heat pump Fan changed to High
11:03:26 AM - 6 hours ago
Living room heat pump Hvac changed to cool
10:57:01 AM - 6 hours ago
Living room heat pump changed to Cool
10:57:01 AM - 6 hours ago
Living room heat pump Power turned on triggered by service Switch: Turn on
10:56:59 AM - 6 hours ago - Kenny
Living room heat pump Status was connected
10:56:55 AM - 6 hours ago
Living room heat pump Hvac turned off
10:56:55 AM - 6 hours ago
Living room heat pump Swing changed to Auto
10:56:55 AM - 6 hours ago
Living room heat pump Fan changed to auto
10:56:55 AM - 6 hours ago
Living room heat pump Power turned off
10:56:55 AM - 6 hours ago
Living room heat pump turned off
10:56:55 AM - 6 hours ago
Living room heat pump Status became unavailable
10:56:49 AM - 6 hours ago
Living room heat pump Hvac became unavailable
10:56:49 AM - 6 hours ago
Living room heat pump Swing became unavailable
10:56:49 AM - 6 hours ago
Living room heat pump Fan became unavailable
10:56:49 AM - 6 hours ago

Which version exactly you have when you said last?

I am on version 1.6.2

It's weird because i fix a bug like you have in this version, several people confirm me it was ok after that. I have really no idea.

Okay, I can write an automation to reload the integration if it becomes unavailable. Just wanted to bring it to your attention. Thanks for all of your hard work.


Model weights

Any plan to publish the weights? Just a baseline version will do. Rare to find any such model (PoseC3D) for violence detection/recognition.
Thanks.

Sorry, This is a project currently under development, so there is no weight that works properly at the moment that I can publish at the moment.

The network should be compatible with the pre-trained weights from MMAction2 right? Just change num_classes to my desired classes and train the PoseC3D/ResNet3DSlowOnly network according to this?

Yes it is compatible with the pre-trained weights on MMAction2.
Just change the number of classes in model classifier head the config file to fit your purpose.
If you choose to train with your own custom dataset, that code in your embedded link would need to be modified to fit yours.


Ensure screenshots are automatically taken on failure for has_text?

This PR adds screenshots on has_text? failure, so that it works on assert_text/2 and other functions.
Closes #471.

Hi @keathley! Sorry it took a while, but the build is green now 😄


More visibility for workingDirectories setting

eslint is sensitive to the current working directory. Monorepos opened in VSCode will usually have the wrong working directory. This leads to eslint extension in VSCode misbehaving in subtle ways.
The official way to solve this is to configure workingDirectories so that the extension knows where to run eslint. It even has an automatic option, which is great.
Unfortunately, this functionality is not easily discoverable. At the absolute minimum, the user needs to identify that they have a problem with the extension, read the docs and notice that the setting applies to them. They may also create an issue and wait for a project maintainer pointing them to the workingDirectories setting manually. The volume of related issues speaks for itself: #97, #111, #196, #238, #310, #337, #441, #455, #550, #552, #595, #691, #695, #696, #712, #718, #722, #745, #747, #759, #781, #784, #794, #807, #842, #854, #856, #880, #881, #933, #938, #956, #959, #1091, #1100.
One option would be to make auto behavior the default. It would backfire for some users, though, like in #982. It is difficult to estimate how many users it would impact, as the users relying on the current default are not creating issues.
Another option could be to try to improve the automatic detection to handle all cases better. It seems this could be handled by relying on detecting the node_modules/.bin/eslint in addition to detecting .eslintrc.
Another option could be to detect possible scenarios where the user needs a workingDirectories option and warn the user about it before they face issues. For instance, if the workingDirectories is not set, but there are .eslintrc files in nested directories, this is a risk situation.

Thanks for raising this. I do agree that improving this will reduce the amount of issues file. So I appreciate this!
Changing the default is IMO not a good idea. Whenever we tried to do this in VS Code there was quite some swirl especially since it can result in a workspace moving from working to not working.
I would rather opt into writing some code on the server side that does some scanning of the folder structure and tries to detect a mono repro setup and then proposes some settings to be added. If the user confirms this the settings can be even added programatically.
@denis-sokolov would you be interested in working on a PR for this?

Alas, I can not contribute further.


MARINe rocky intertidal plot improvements

Melissa had the following suggested improvements for the interactive plots

order the sites in the legend from north to south not alphabetical
keep color consistent for a given site between indicators (e.g., if Sokol Pt is blue for mussel plot then it should be blue for barnacle plot)
the lines for sites are hard to see (thin and faint) unless you hover on one. Can they be thicker/brighter while still allowing the one on hover to be even more prominent?

These aspects should be updating in this new R package onmsR per the

onmsR Reference - Data: Rocky intertidal (MARINe)


Issue 58

Update the MTH5 structure to include Experiment -> Surveys

Codecov Report

Merging #67 (68c990a) into master (3e456ab) will increase coverage by 1.99%.
The diff coverage is 38.26%.

@@            Coverage Diff             @@
##           master      #67      +/-   ##
==========================================
+ Coverage   43.82%   45.82%   +1.99%
==========================================
  Files          42       43       +1
  Lines        5478     6403     +925
==========================================
+ Hits         2401     2934     +533
- Misses       3077     3469     +392

Impacted Files
Coverage Δ

mth5/groups/survey.py
29.41% <29.41%> (-37.26%)
:arrow_down:

mth5/mth5.py
49.01% <36.87%> (-4.05%)
:arrow_down:

mth5/groups/experiment.py
44.44% <44.44%> (ø)

mth5/clients/make_mth5.py
63.29% <100.00%> (+0.23%)
:arrow_up:

mth5/groups/__init__.py
100.00% <100.00%> (ø)

tests/test_build_from_experiment.py
100.00% <100.00%> (ø)

tests/test_filters.py
100.00% <100.00%> (ø)

tests/test_from_fap_stationxml.py
100.00% <100.00%> (ø)

tests/test_from_stationxml.py
98.11% <100.00%> (ø)

tests/test_make_mth5.py
98.61% <100.00%> (ø)

... and 7 more

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 3e456ab...68c990a. Read the comment docs.

Updated the hierarchy of an MTH5 file

The root level is now Experiment to align with metadata
Added an ExperimentGroup to accommodate the Experiment
Added a MasterSurveyGroup to accommodate the Surveys
Made sure the module is backward compatible with v0.1.0
Updated tests and added version_1 and version_2 for each version
Updated documentation to demonstrate the subtle differences
Merged with master


How to reduce prompt with too many tools

Issue you'd like to raise.
I am using chain wiht ConversationBufferMemory. I have defined about 50+ tools with detailed description。So the prompt to GPT is likely over 4096 tokens within 4 loops. How can i reduce my prompts or increase the max tokens of GPT. Is there any ideas?
Suggestion:
No response

Perhaps try out compress gpt: https://github.com/yasyf/compress-gpt
It seems to be built for exactly this use case.

You can use ConversationBufferWindowMemory, but this will essentially reduce your short-term memory, given the large number of tools. You can also use VectorStoreRetrieverMemory so that the agent only accesses the previous information from the conversation as required. I think the second option is more useful in your case.
https://python.langchain.com/en/latest/modules/memory/types/vectorstore_retriever_memory.html

@lixincheng4026 Don't load all the 50+ tools into the prompt. Use ToolRetriever and let it load only relevant tools into the main prompt. This way you'll leave more room for conversation history.

@lixincheng4026 The docs for @vnktsh's answer are here: https://python.langchain.com/docs/modules/agents/how_to/custom_agent_with_tool_retrieval
This issue can probably be closed.


Grouped fields

iD has a few special fields that group related tags together, like Name, Address, Structure, Allowed Access, and Bike Lanes. Grouping is a nice way to make the inspector simpler and more intuitive. There are a lot more tags that could benefit from grouping, for example:

Internet connection/access/network name
Wheelchair access/description (#7698)
Population number/source/date (#6672)
Fee presence/amount/payment types

Instead of coding a special field type for every grouping, we should look into a reusable grouped field type that can handle simple combinations.

@quincylvania Hey, I want to start contributing to this project. Could you guide me a bit more on this issue. Would love to start off somewhere.

Welcome, @karmanya007. This issue is actually a bit advanced, and there aren't that many introductory issues open right now. But if you're feeling intrepid then can read our contributing guide and jump in anywhere.

Instead of coding a special field type for every grouping, we should look into a reusable grouped field type that can handle simple combinations.

We already have such fields - like operator and operator:type for schools. Can't we use the same for the ones above? If a user fills in the first field, other appear below it.

We already have such fields - like operator and operator:type for schools.

@maro-21 Yes, these already work such that one field's appearance depends on a related field's value, but they should also be grouped together visually.

@quincylvania I think, now I can take this one. Could you tell me how the grouping happens?


Recording

Hi @sameersingh
Thank you so much for creating this amazing tutorial and sharing the slides. I am wondering if there is any recording and if it's shared anywhere as I couldn't find it. I think that would be tremendously helpful for people who don't have access to the conference.
Best regards

Hi @hardianlawi,
The video is available at: https://underline.io/events/284/sessions?eventSessionId=10748


Sanitize user params and clean up input

Pull Request
Title
Add validation and default settings to ClusterStateConfig for required parameters

Description
_From the discussion in https://github.com/microsoft/vasim/pull/29#discussion_r1742436854 we need to sanitize user params (ex: window, lag) so that things don't break unexpectedly. We add some basic validations and default settings. _

Issue link: (optional) #31

Type of Change
Indicate the type of change by choosing one (or more) of the following:

🔄 Refactor
🧪 Tests

Testing
Unit tests and notebook

Additional Notes (optional)
As part of this change also added field "enabled" for future use is https://github.com/microsoft/vasim/issues/42.
if enabled is False, prediction config is validated and defaults are added. Otherwise it's ignored. We will add more checks for validation and change code for prediction separately

Codecov Report
Attention: Patch coverage is 92.45283% with 4 lines in your changes missing coverage. Please review.

Project coverage is 76.63%. Comparing base (94df910) to head (081254c).

Files with missing lines
Patch %
Lines

...ender/cluster_state_provider/ClusterStateConfig.py
88.88%
3 Missing and 1 partial :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #81      +/-   ##
==========================================
+ Coverage   75.97%   76.63%   +0.65%
==========================================
  Files          22       23       +1
  Lines        1024     1070      +46
  Branches      125      132       +7
==========================================
+ Hits          778      820      +42
- Misses        196      199       +3
- Partials       50       51       +1

Flag
Coverage Δ

unittests
76.63% <92.45%> (+0.65%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

I think this also closes  https://github.com/microsoft/vasim/issues/70 ?

One thing - in the notebook there is a section "prediction_config : this relates to the window of...." where it describes the prediction config and each field. Can you please add a line about what the new "enabled": true,does? Thanks!

Done!


Named colours/seperations

In order to generate print files for a printer which has additional white, and clear inks, I need to create named colours, using 'Seperations' is there any way to do this? They're described in this Adobe document, around page 167:
http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/PDF32000_2008.pdf

Not currently supported, but we accept pull requests!

Okay, any hints reading material to get rolling? Other than the spec!


Expose WrappingComponentLoggerImpl through ComponentLogger

there's this perfectly good logger impl here and im just tryin to use it

what are you trying to do? this is really for use by platforms, not by end users?

what are you trying to do? this is really for use by platforms, not by end users?

Want to use this for Paper, kash told me to make a static method for it

The point of the service provider is so that any logger created uses the correct serializer, not just some magical 'blessed' loggers you choose. Why does the service provider not work?

discussed internally that I'm a dumbass


Kubelet Startup Crashes systemd on Garden Linux

What happened:
systemd crashes when the node starts. While this is most likely a systemd issue (that unfortunately we are not able to fix in a short period of time) we need a workaround. It also appears problematic to run docker containers in that restricted context and at that time where docker might not be fully started.
This happens with Garden Linux and only on GCP (AWS is fine). It happens with various systemd versions (244, 245).
What you expected to happen:
systemd does not crash
How to reproduce it (as minimally and precisely as possible):
Create a gardenlinux cluster on GCP (but there is no need to).
Anything else we need to know?:
Garden Linux ticket (still private): https://github.com/MalteJ/gardenlinux-manifest/issues/17
In the kubelet.service file replace the docker run command with the two following lines (this has been tested).
#ExecStartPre=/usr/bin/docker run --rm -v /opt/bin:/opt/bin:rw eu.gcr.io/sap-se-gcr-k8s-public/modified3/k8s_gcr_io/hyperkube:v1.15.11 /bin/sh -c "cp /usr/local/bin/kubelet /opt/bin"
ExecStartPre=wget -O /opt/bin/kubelet https://storage.googleapis.com/kubernetes-release/release/v1.15.11/bin/linux/amd64/kubelet
ExecStartPre=chmod 755 /opt/bin/kubelet

Alternatively the following should also work (but not tested):
ExecStartPre=sh -c 'docker cp $(docker create ):/hyperkube /opt/bin/kubelet'
Environment:

Gardener version:
Kubernetes version (use kubectl version):
Cloud provider or hardware configuration:
Others:

I don't see issue from g/g side here. There is g/gardener-extension-os-gardenlinux that reconciles the OperatingSystemConfig CRs and it is up to the OS extension to generate a configuration that fits the operating system.
Ref https://github.com/gardener/gardener/blob/v1.2.1/docs/extensions/operatingsystemconfig.md


Thumbnail target's wrong slide?

As per this example;
http://justvehiclegraphics.co.uk/car-graphics-dev
It seems the thumbnails are targeting the wrong slides when you show more than one item at a time, maybe I could be doing something wrong - but I can't see where in such a simple process to get it going. :/

It looks like its working fine for me? What do you mean by "show more than one at a time"?

If you set items to anything other than 1, the thumbnails are not properly clickable. For example:
$('.owl-carousel').owlCarousel({
        items: 2
});

Only the first and third thumbs are clickable with 5 images total.

Not in scope of project.


How to get FB Token?

With autolikes, its not working anymore...

same issue here!

same issue

Hi there ! Can you be more precise on what is not working?

I think tinder blocked the way to get an fb token:
https://www.facebook.com/dialog/oauth?client_id=464891386855067&redirect_uri=https://www.facebook.com/connect/login_success.html&scope=basic_info,email,public_profile,user_about_me,user_activities,user_birthday,user_education_history,user_friends,user_interests,user_likes,user_location,user_photos,user_relationship_details&response_type=token


Be 720 update log4js

Updated log4js to the latest version for refining logging of explorer
Added the following environment variables to control logging.

LOG_LEVEL_APP=debug
LOG_LEVEL_DB=debug
LOG_LEVEL_CONSOLE=info
LOG_CONSOLE_STDOUT=true (console log is forwarded to stdout, instead of file)

https://log4js-node.github.io/log4js-node/index.html

@nekia  will this rollout logs based on config, assume when log reaches certain size, example if log > 1 MB it will be archived?

@nekia will this rollout logs based on config, assume when log reaches certain size, example if log > 1 MB it will be archived? as per current existing configuration.

Now just added the configuration for rolling by size as well. @nfrunza


Sequence.remove() not working properly

In regards to Pat Hine's question regarding Sequence.remove()
I think I found a subtle bug that is preventing seq.remove() from removing a subarray at the top level.  (Currently you need to use seq.at(1).remove(0)... as seq.remove(1) doesn't do anything on subarrays)  Here are my findings and hopefully I'm understanding the code correctly.
When removing a subarray there is a recursive action involving both Part.remove() and Sequence.remove().

In Part.remove() method It seems there is a type change in the type of 'time' from type Tone.TransportTime into type Number
line 17132
time = this.toTicks(time);

later when Part.remove() encounters an array it calls Sequence.remove()

Sequence.remove() is called on a subarray [type Sequence])
approx line 17610
Tone.Sequence.prototype.remove(index, value) is called which calls

Tone.Part.prototype.remove(this. this._indexTime(index), value)
approx line:17126

and in Tone.Part.prototype.remove() the loop thru this._events[] looks for (event instanceof Tone.Part) if found it calls

event.remove(time, value)
I thought it would call itself, Part.remove() (thinking this event was a Part) But console.log(event) was telling me that although it is an instanceof Tone.Part it's actually subclass of Part i.e. Sequence.

so it calls Tone.Sequence.prototype.remove(index, value) AGAIN but it is passed in time for the index param. But that should have parameters of (index, value) not (time, value)

Then calls Tone.Part.prototype.remove(this. this._indexTime(index), value) AGAIN.

So I traced the (index->time) value as this recursion takes place, and the time value gets corrupted by the calculation of this._indexTime(time) instead of this._indexTime(index).
I see that if you pass in time to ._indexTime(index) it looks to see the type of the index param (index instanceof Tone.TransportTime) but during the initial call to Tone.Part...  time = this.toTicks(time) is called which turns time into type Number instead of type Tone.TransportTime so now it doesn't recognize that the time param is 'time' and NOT an index.  It treats time as an index and time gets miscalculated and matches are never found.
With some experiments I found that even if the time value is correct, it still removed only the first element of the subarray so to delete the other elements, another loop is needed (using the j index):
Tone.js line 17132 ...
time = this.toTicks(time);
for (var i = this._events.length - 1; i >= 0; i--) {
var event = this._events[i];
if (event instanceof Tone.Part) {
//------------------------ new code -------------------
for(var j = event.length - 1; j >= 0; j--) {
event.remove(j, value);
}
// ------------------------- end new code ---------------------
//	                event.remove(time, value);
            } else {
             '''
            }

And it appears now .remove() will work with any size subarray IF it doesn't have nested arrays inside.
It DOES NOT work if the subarray has a sub-subarray.  I'm still trying to work that out.  A subArrayOffset is needed to be included in the if(event.startOffset === time) test inside the 'else' section to properly calibrate it so matches are recognized.
For A/B comparison, I've made a codepen (like Pat Hime's) showing the current behavior (which doesn't remove sequences).
https://codepen.io/mikesult/pen/JOGZRZ
The demo will remove sequences.  Unfortunately I couldn't make a codepen of the demo version because codpen doesn't allow links to script using http (only https) and my modified Tone.js version is on a http server.  So here's a link to the demo.
http://www.guitarland.com/ExperimentWithSeq.html
Both pages are reading the same javascript.
Mike Sult
P.S. Tone.js is bringing me great joy.
Bugs and feature requests only please.
For help questions, check out the forum: https://groups.google.com/forum/#!forum/tonejs
If possible, please include a link which illustrates the issue.
https://jsfiddle.net/3m9k17ef/ (latest release)
https://jsfiddle.net/kyqnbr7d/ (dev build)

I think I wasn't complete in my suggested change in Tone.Part.remove()
It still needs to have a branch between sequence and parts incase of nested parts (is that a thing?)  I've tested this with basic Parts and Sequences. and it hasn't changed or broken the Parts behavior and it now deletes sequences with a top level remove().
Tone.js line 17132 ...
time = this.toTicks(time);
for (var i = this._events.length - 1; i >= 0; i--) {
var event = this._events[i];
if (event instanceof Tone.Part) {
// ------------------------- new code -------------------------
if(event instanceof Tone.Sequence) {
for(var j = event.length -1; j >= 0; j--) {
event.remove(j, value);
}
} else { // Tone.Part
event.remove(time, value);
}
// ------------------------- end new code -------------------------
//			event.remove(time, value);
} else {
'''
}
Still don't have a suggestion for nested sequences being completely removed with a top level remove()  It seems that the definition of time=0  in the inner-inner sequence is based on it's parent's startOffset not the main outer sequence's definition of time=0;  I've been experimenting with using a subArrayOffset when I recognize a subarray but I don't have it working properly yet.
cheers,
Mike Sult

Update:  Making some progress on nested sequences (sub-sub-arrays but no deeper so far)
Current solution isn't ready for primetime as I added a global
var subArrayOffset = 0;
just outside of the Tone.Part.prototype.remove()
which is used inside of Tone.Part.remove() when sub-sub-array are found.
Looking for a better way, discussion below.
Also found another issue regarding nulls in a simple sequence.  Used for rests they work fine but when removing them there is a problem.
CAVEAT: if there is a null in the subarray the last note isn't removed.  If there are more than one nulls in the sequence then that number of notes after the last null won't be removed.
REASON: the sub-array.length attribute doesn't count the nulls so the loop using sub-array.length as the loop limit doesn't remove all of the sub-array. This seems to different behavior then regular javascript arrays:
var a = [null, "C3", "C3"];
a.length; // returns 3
However:
var seq = new Tone.Sequence(function(time, note){
synth.triggerAttackRelease(note, '8n', time);
}, [null, "C3", "C3"]).start();
seq.length; // returns 2
So to completely remove sequences that have nulls there needs to be someway to count how many nulls are there.  I'm not sure how to do that in this situation.
remove() for sub-sub-arrays
Current behavior removes sub-sub-arrays (nulls still a problem here too).
ANOTHER CAVEAT: if the are 3 or more sub-sub-arrays in the sub-array the last sub-sub-array must be at least 3 elements long (I have no idea why);
I'm trying to update the startOffset of the subArray elements but I can't seem to identify them uniquely.
DIFFICULTY: for some reason sub-sub-arrays are not recognized as (instance of Tone.Sequence) and instead show as null (??).  So I'm having trouble distinguishing them from a regular null from a common sequence.  The sub-sub-arrays need the subArrayOffset subtracted from their startOffset so the the time match is found.
I'm thinkings that in events of a sub-sub-array if the startOffset is updated with the -subArrayOffset then they might be recognized for removal and possibly work for deeper nesting also.  But I can't seem to get a reference to the event.
NOTE: Currently using a global var subArrayOffset defined outside of Tone.Part.prototype.remove()
I've updated the Demo page so show the current behavior and I'm checking that I'm not breaking remove() for Tone.Part.
http://www.guitarland.com/ExperimentWithSeq.html
getting closer.


feat(generic): add Pad

What?
add Pad
https://laravel.com/docs/9.x/collections#method-pad
Why?
It's on the todo list
How?
I first implemented PadRight and PadLeft (since Laravel does both in the same function depending on the size argument) and was planning to leave it that way. But since I had both methods and to mimic Laravel all that was missing was just a sign check.....

Codecov Report
Base: 97.85% // Head: 97.91% // Increases project coverage by +0.06% :tada:

Coverage data is based on head (b8eb0ea) compared to base (021eb6a).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #66      +/-   ##
==========================================
+ Coverage   97.85%   97.91%   +0.06%
==========================================
  Files           7        7
  Lines         931      960      +29
==========================================
+ Hits          911      940      +29
  Misses         14       14
  Partials        6        6

Impacted Files
Coverage Δ

generic.go
100.00% <100.00%> (ø)

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

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

LGTM


How to make https request.

How to make https request if the URL is https.

You can make https requests as any other requests.


HUE Job Designer mantain obsolet jar in oozie application workspace  lib folder

create a mapreduce action in Hue Job Designer. Point in "jar path" to your .jar file with the mapreduce code.
run it.
update the Job "jar path" to a new jar with your changes in the code.
run it.
look at oozie.wf.application.path lib folder and you'll see copies of both .jars... the new and the previous one
what is worst.... each map will run a differen .jar...

You would need to delete the old jar from the workspace folder? (below the cover, Oozie picks up everything in the lib dir of the workspace)

Yes this workaround works, but you can't see the workspace folder till you run the Job... I think HUE should take care of having in the workspace the right files...


Add flushSync option to update()

This would allow synchronous updates (e.g. for tests and some cases of headless mode):
editor.update(() => {
  ...
}, { flushSync: true });

// Update and listeners are already executed

I don't think we want to call it flushSync as this would encourage people to always use it. discrete would be more accurate and follow the terminology browsers and React uses for the same behaviors.

discrete

Thought react uses flushSync, but discrete sounds good too

@trueadm Another option I had in mind is to add $flushSync() util to be called within updateFn. It might make it even more explicit than a flag

Thought react uses flushSync, but discrete sounds good too

That's true, I guess I meant as the underlying terminology. I'm just worried everyone will do this rather than use async updates.

Another option I had in mind is to add $flushSync() util to be called within updateFn. It might make it even more explicit than a flag

Gets complicated with nested updates though and what should happen when others happen etc.

That's true, I guess I meant as the underlying terminology. I'm just worried everyone will do this rather than use async updates.

Would this really be a problem? You'd have to go looking for this API and then maybe we could ameliorate the problem with some documentation around valid use cases for it.

Lexical used to have a flush sync flag, we actually killed it. Everyone used that in their tests and then their production surfaces were in async causing a different behavior.

Lexical used to have a flush sync flag, we actually killed it. Everyone used that in their tests and then their production surfaces were in async causing a different behavior.

With that I don't like neither of solutions anymore :) But using internal _flushSync flag is even more confusing, so I'll move on with discrete


Color from a hex string

Hi there! Thank you for the great work you've done on this library. In the app we are building we are importing a bunch of hex colors from the database. Ideally, we would want to create some derivatives of these colors on the front-end side. Do you think Palette could use a Color.fromHex function to help with this? I would be happy to provide a PR if you think such addition could be good for the library :)

I'm working on this today


Switch framework default authentication to cookies/sessions instead of basic auth

This is a killer Dev / User Portal framework boilerplate which is supposed to save folks time and automatically implement best practices. There aren't any production dev portals that use basic auth that i'm aware of, they all use cookie/sessions so I still think it would be a smart move to switch to that authentication by default, considering the Aqua version of this framework already defaults to it as well.
As a new developer on the framework the first thing I would do is hit the interactive signup/login flows through swagger docs and find they don't work as expected because they aren't creating and maintaining sessions like they appear to be designed to do.
Previously, documentation was the biggest barrier to entry, now that we have some solid Swagger docs, I think it's more of these little technical hurdles when rolling out a new platform with this boilerplate. Setting up cookie/session support is an unexpected chore. Just like setting up forgot/reset password flows or even "abusive login attempt detection" would be chore but is already wonderfully handled for you.
Thoughts? If agreeable we could just pull request Aqua's implementation which is working well for me.

Thanks!  So my stance on cookie based authentication... given we're in a new age of SPAs (Angular, Vue, React), decoupled APIs, mobile devices, IoT, and general decoupling from the front and back ends... cookie auth is now in the days of the past.  More and more services are deprecating cookie-based auth in favor of basic authentication with API tokens, JWT, and OAuth as they're stateless.  Rather than go into all the reasons one should avoid cookie-auth nowadays, Auth0 has a great read here:
https://auth0.com/blog/cookies-vs-tokens-definitive-guide/

In my strong opinion, this repo should have started with JWT, but this isn't my project. :)  Moreover @jedireza 's stance over the year (years?) has been to keep this project as a bare-bones starter.  The reason I'm just contributing now is because this starter has helped immensely over time, so I owe you a few PRs. :)  But @jedireza, a reason for not committing moving forward is that I know you don't want to progress this in terms of features.  If you're interested in having more people contribute to this, throw out some ideas on direction and lets keep this project alive!  Especially now that you've done the work of a Hapi 17 up.
In my opinion, implementing cookie auth is like going back in time.  But you know how opinions go nowadays.
@fishmongr happy to see you stepping up on the docs. Swagger is an amazing step in the right direction.

Adding to the wiki has generally been your stance, I for one am good with that and think its the best approach.
I'll get a post up for hapi-auth-jwt2

Thanks, good feedback @bmgdev and @jedireza!
I think updating Wiki guides on implementation scenarios would certainly be helpful. One left field solution would be for this to be including in the on-boarding that occurs with first-time-setup.js which could ask the developer which authentication method they want and to configure that automatically at setup, that'd be interesting.
Re: Updating the swagger docs, it was a good way for me to get my head around the project, happy to continue to contribute where I can. Hapi-Swagger definitely has it's limitations still being on Swagger 2 but even Swagger 3 / OpenAPI Spec 3.0's Swagger UI is still lacking in some design and usability features for full-scale docs but it certainly can be indispensable for projects like this.
Lately I've been focused on replacing Swagger UI in my personal projects with ReDoc which is still completely powered by Swagger.json but replaces that dated limited accordion view with the now industry ubiquitous 3 panel API reference layout. https://github.com/Rebilly/ReDoc
Docker's API is actually using it: https://docs.docker.com/engine/api/v1.25/#
Outside of being a documentation boner it provides markdown format to add all the typical sections of content you might want to include in documentation though Github Wiki is certainly a more standard approach.

... we'd rather be writing code than wiki entries.

Let's make sure to put some code snippets in the wiki entries 😅

I'll get a post up for hapi-auth-jwt2

Rad! 🙏

One left field solution would be for this to be including in the on-boarding that occurs with first-time-setup.js which could ask the developer which authentication method they want and to configure that automatically at setup, that'd be interesting.

True, it would be a nice convenience. I'm just not interested in adding that kind of maintenance overhead. The templates would need to live somewhere, then we'd need to have logic to modify code files based on their choice, oh and don't forget doing this for tests too. 😬
And then we'd need to figure out how to get the live demo to run without doing some kind of environment detection and custom build or something.
Personally, that's doesn't sound like a good return on the time investment.

Thanks again to everyone who's interested in these projects and big thanks to everyone for getting involved and contributing. ❤

@fishmongr I'm not sure what you meant by "Outside of being a documentation ______". I edited your comment and I'm not interested in that language. If I'm mistaken or if was a typo, that's cool, but let's just leave it at that for now.


add targeted ccf coordinates and manipulator coordinates to ephys session example

What exactly needs to be added? In the session json example , I see targeted_ccf_coordinates and manipulator_coordinates in the EphysModule
EphysModule(                     rotation_angle=0,                     arc_angle=25,                     module_angle=-22,                     targeted_ccf_coordinates=[CcfCoords(ml=6637.28, ap=4265.02, dv=10707.35)],                     ephys_probes=[],                     assembly_name="ephys module 2",                     coordinate_transform="behavior/calibration_info_np2_2023_04_24.py",                     primary_targeted_structure="LC",                     manipulator_coordinates=Coordinates3d(x=9015, y=7144, z=13262),                     calibration_date=datetime(year=2023, month=4, day=25, tzinfo=timezone.utc),                     notes=(                         "Trouble penetrating. Lots of compression, needed to move probe. Small amount of surface"                         " bleeding/bruising. Initial Target: X;10070.3\tY:7476.6"                     )


How to change theme to material datepicker?

i want to change theme from cupertino to Material Picker. how i can do that? thx

Thanks for your issue, sorry ,we can't. this package is specific for iOS style date time picker


chore: add v5.28.0 release info

Proposed Changes
Adds release info for v5.28.0 release:

Checklist
To ensure you provided everything we need to look at your PR:

[x] Brief textual description of the changes present
[x] Visual demo attached
[ ] Steps to try out present, i.e. using the @bpmn-io/sr tool
[x] Related issue linked via Closes {LINK_TO_ISSUE} or Related to {LINK_TO_ISSUE}

Looks good to me!