Strange New Worlds integration issue?

Hi.  First, thank you so much for this.  I have it installed and also have the express note templater from the demo vault working in my translation (although it took me 2 hours to realize my translation had a space at the end of each H6 line which was causing the verses not to pop up in the picker!)
I use a single note for each Bible chapter to put my notes on as well as putting references during sermon notes back to the bible ... and leave the Bible files themselves unadulterated (I don't mark up the origin, I mean).  While I am reading the Bible, any references for things I myself have written will show up using the Strange New Worlds plugin...  basically showing me "this verse has some notes somewhere, go see!"
If I do a single verse reference in my personal note, like [[Ezek 21#10]] I see the outgoing link fine and the incoming link fine in the Bible.  Looks like:

and in the Bible it shows like:

However, if I do the range reference in my note, I see this fine:

but in the Bible, I don't see the SNW reference:

There is a backlink to my note:

And it even appears to show fine in the SNW sidebar:

To be clear, my goal is to have a SNW reference from the Bible back to my notes, whether the reference is a single verse or a range of verses.  I realize I might not be able to get a SNW reference to each of the verses in the range (like in the example, have SNW show a number on verse 9, verse 10, verse 11, AND verse 12) but I would at least like to have a reference to verse 9 so that I know I have personal notes for that particular verse.
I know this seems like a bug maybe in SNW, but I was wondering if anyone had run into this and/ or sees the same thing?  Since this format of range seems specific to this link-heading-range plugin, I thought I would ask here. It isn't a matter of a refresh in order to show these SNW numbers- I have reloaded the app and no difference.
Thanks!
Aaron

I was about to post the same issue when I saw you already did!
I'm wondering if there's any way to fix that behavior in this plugin without changing the SNW plugin.


feat: Use faster algorithm for python/0027-remove-element.py

This algorithm outperforms the current version at 30ms compared to 33ms runtime (though complexity is still O(n)). Memory efficiency is still the same.
This algorithm also uses less Python-specific syntax and tricks and might be easier for engineers coming from other languages to read (though this is of course subjective).
The algorithm uses a 2-pointer approach (one pointer for insertion, lptr, and one pointer for lookup, rptr). Inspiration for approach came from a combination of the following 2 course videos:

https://www.youtube.com/watch?v=Pcd1ii9P9ZI
https://www.youtube.com/watch?v=DEJAZBq0FDA

File(s) Modified: python/0027-remove-element.py
Language(s) Used: python
Submission URL: https://leetcode.com/problems/remove-element/solutions/3133218/beats-92-46/

Closing this. I was mistaken. When using Python 3, my algorithm outperforms the one here, but with Python 2, it does not.


Please add a license file and a screen shot

I'd like to add this to awesome-zsh-plugins, but I prefer to add themes with screen shots in the readme so that users can see what they look like without having to install them.
Also, please add a license file, some people won't use any code that doesn't have an open source license. If you don't have one in mind, https://choosealicense.com is a good resource to help you select an appropriate one.
Thanks!

Thank you, I've added a screenshot and the license file.


Support for constraints at the schema member level in java classes

The @Schema annotations looks to take effect at the class level only, for example if I want to specify some constraints/add information the following doesn't work
class Pet {
@Schema( required=true, pattern="[0-9]{8}" )
public String bornAt;
}
So far, the only way I can mark required properties in v3 is to add @Schema(requiredProperties = arrayOf("bornAt")) at the class level, which is quite limiting.
I'm using the latest version, which is 2.02

is this in kotlin? also can you share a test case reproducing the issue?

Yes, I am using Kotlin, I guess that Java should be the same.
Here is a basic repro:
@Path("/")
class Api {
    @GET
    fun getter() : Pet = Pet("")
}

data class Pet(
        @Schema( required=true, pattern="[0-9]{8}" )
        val bornAt: String
)

@Test
fun gg() {
    val reader = Reader()
    val api = reader.read(Api::class.java)
    val json = ObjectMapper().setSerializationInclusion(JsonInclude.Include.NON_NULL).writerWithDefaultPrettyPrinter().writeValueAsString(api)
}

json yields the following:
{
"openapi" : "3.0.1",
"paths" : {
"/" : {
"get" : {
"operationId" : "getter",
"responses" : {
"default" : {
"description" : "default response",
"content" : {
"/" : {
"schema" : {
"$ref" : "#/components/schemas/Pet"
}
}
}
}
}
}
}
},
"components" : {
"schemas" : {
"Pet" : {
"type" : "object",
"properties" : {
"bornAt" : {
"type" : "string"
}
}
}
}
}
}

Issue is reproducible in Kotlin, in Java it's not; seems like it could be caused by the way annotations are handled in Kotlin, possibly needs further investigation, however explicitly specifying the annotation target seems to do the trick:
data class Pet(
        @get:[Schema( required=true, pattern="[0-9]{8}" )]
        val bornAt: String
)

Thanks for workaround suggestion, that indeed helps in Kotlin.


Feature request - htmlForeground

Would be really nice if the foreground could be specfied as html as well!

Hi
How to do that ? Transform html2canvas ?
Maybe set HTML to z-index 0, put the Canvas in foreground transparency and paint the result ?
I'm not sure to understand and how implement that.
Do you have an idea ?


Push new module to puppet forge

Hi,
As since v4.0.0 puppet 3 support is dropped and puppet 6 support is achieved IMO there's a good time to push new version to puppet forge.

Done! 👍


Update index.html

Improved interface of the weather app

can you please add the screenshot of the ui change

uploaded screenshot

I think there are some errors in your code


Add bits-service signing credentials to cc worker/clock config

As proposed  by @zrob in #721

A short explanation of the proposed change:
See PR title.

An explanation of the use cases your change solves
We are preparing a change in the bits-service that makes requires CC to use basic auth when requesting signed URLs from bits-service. In preparation,  we'd like to add the necessary configuration to CC.

[x] I have viewed signed and have submitted the Contributor License Agreement

[x] I have made this pull request to the master branch

[x] I have run all the unit tests using bundle exec rake

[x] I have run CF Acceptance Tests on bosh lite

Signed-off-by: Peter Goetz<EMAIL_ADDRESS>/cc @smoser-ibm @suhlig

Hey @petergtz,
We'd like for the clock's set of properties to remain minimal. We do not believe these bit_service properties should affect the cloud_controller_clock job. Could we ask for you to remove that portion of the PR? Everything looks good otherwise.
Thanks,
CAPI Community Pair - @aashah & @michaelxupiv

@aashah @michaelxupiv
The cloud_controller_clock job has a dependency on the blobstore_client, which is the bits_service_client when the bits_service is configured to be enabled. I think it has these dependencies, because it has  jobs regularly delete bits from the blobstore as cleanup tasks. I therefore request to merge this PR as is.
We had to add these properties explicitly to make the cloud_controller_clock job run correctly.
Btw, the fact that the cloud_controller_clock job swallows such configuration errors (like omitting required properties) silently makes it extremely difficult to discover and troubleshoot. Please see #732 for more context.
Thanks.

Ah, thanks for that. It was difficult to follow dependencies for some of the configuration options.
We'll go ahead and merge as is then 👍
Thanks,
CAPI Community Pair - @aashah & @michaelxupiv


connection: Add TCP_FASTOPEN listener option (continuation)

This is addressing the last unaddressed comments from #2793
Done here:
https://github.com/envoyproxy/envoy/pull/2793#discussion-diff-182437803R20
Rename socket_option_test_harness to socket_option_test
https://github.com/envoyproxy/envoy/pull/2793#discussion-diff-181290693R15
Tested with if 0 on both Linux and macOS. All tests still pass.
https://github.com/envoyproxy/envoy/pull/2793#discussion-diff-181290864R114
Changed to EXPECT_THROW_WITH_MESSAGE
Still TODO:
missing test coverage
https://github.com/envoyproxy/envoy/pull/2793#discussion-diff-182258992R43
setTcpSocketOption
https://github.com/envoyproxy/envoy/pull/2793#discussion-diff-179304507R44
@htuch @ggreenway

Looks good so far @bmetzdorf, will stay tuned for the remaining TODOs.

thx!


run.seq fixes for posh

@dkarnikis Ideally, when you have time, please update the parallel script too:-)


Payments tab in beta vs old shows discrepency

Describe the bug
Browsing a wallet in old explorer shows all of the payments into or out of the wallet correctly, but in beta explorer, the payments tab only shows 3 payments (the first few) and then no more - it doesn't seem to update either, even after a hard refresh of the page.
To Reproduce
Look at the same wallet in old explorer payments and beta explorer on the payments tab
Expected behavior
Payments tab on beta should align with the payment info from old explorer
Screenshots
See discord for context
Desktop (please complete the following information):
OS: Linux (ubuntu 20)
Browser: edge-dev (chromium build) 93.x , also used firefox 67.x and saw same result

Can you try loading payments again, but let it load completely on the first tab (all activity) before selecting the Payments filter?

Still an issue @jadeallenx ? I have a feeling the bug was API or caching related.


PACKMOL wrapper with >100,000 atoms

I heard that the PACKMOL wrapper chokes when more than 99,999 atoms are present in the system. I can't reproduce it:
In [1]: from openff.toolkit import Molecule, unit

In [2]: import numpy

In [3]: from openff.interchange.components._packmol import pack_box

In [4]: molecule = Molecule.from_smiles("c1cc(Cl)ccc1C(=O)CS[C]1=CO[C](F)(F)CC1")

In [5]: molecule.generate_conformers(n_conformers=1)

In [6]: packed = pack_box(
   ...:     molecules=[molecule],
   ...:     box_vectors=100 * numpy.eye(3) * unit.nanometer,
   ...:     number_of_copies=[3334],
   ...: )
[13:51:07] Non-integer PDB serial number 186A0

In [7]: packed.n_atoms
Out[7]: 100020

I suspect the issue is with MDTraj or RDKit's loading of the PDB file. There is already some code that attempts to deal with this: https://github.com/openforcefield/openff-interchange/blob/v0.3.26/openff/interchange/components/_packmol.py#L727-L751

@hannaomi

Hi Matt,
Thanks for raising the issue! I've found that any highly solvated systems with >100000 atoms both the RDkit PDB parser and the MDTraj fallback return the same error. I've managed to write a workaround for this by using openbabel to convert the packmol pdb output to xyz format, and then extracting the coordinates. See below function (uses the output file name as function input).
def get_coords_packmol(output_file_path):
    """
    This function reads a PDB file, converts it to XYZ format using Open Babel,
    and extracts the atomic symbols and coordinates from the XYZ file.

    Parameters:
    output_file_path (str): The path to the input PDB file.

    Returns:
    numpy.ndarray: A 2D numpy array where each row represents an atom and the columns represent the x, y, and z coordinates.
    """
    from openbabel import openbabel
    obConversion = openbabel.OBConversion()
    obConversion.SetInAndOutFormats("pdb", "xyz") #Openbabel conversion to xyz

    mol = openbabel.OBMol()
    obConversion.ReadFile(mol, output_file_path)
    obConversion.WriteFile(mol, 'packbox.xyz')
    xyz = open('packbox.xyz')
    N = int(xyz.readline())
    header = xyz.readline()
    atom_symbol, coords = ([] for i in range (2))
    for line in xyz:
        atom,x,y,z = line.split()
        atom_symbol.append(atom)
        coords.append([float(x),float(y),float(z)])
    coords_arr = np.array(coords) #Extract coords

    return coords_arr

# Apply to highly solvated packmol output
# Takes a while to run because of openbabel conversion
arr = get_coords_packmol(output_file_path)

print(arr.shape)

# Construct the output topology - picking back up from pack_box()
added_molecules = []
molecules = [Molecule.from_file('PEG.pdb', file_format='pdb'), water, na, cl] #Must be in the same order as the packmol file
number_of_copies_top = [1] + number_of_copies
solute = topology
for mol, n in zip(molecules, number_of_copies_top):
    added_molecules.extend([mol] * n)
topology = Topology.from_molecules(added_molecules)

# Set the positions
topology.set_positions(arr * unit.angstrom)

I have a full notebook that reproduces the error using a PEG topology. Attempting to attach here:
packmol_sol.ipynb.zip
Is this extension of the pack_box function a feasible addition to the wrapper? Let me know if you need any more info
Thanks!

Many thanks, Matt.
I agree, that approach has worked well for me so far

Great, I'm happy with how #987 has looked and I'm aiming for that to be in the next release (later this week or early next)

I think we've finished this - please let me know if my memory is shoddy here or if there are future improvements that would make your work smoother


Add ability to switch the theme after construction

In applications where the user can choose a theme, this allows for the ability to update the EmojiButton theme to match without having to destroy and re-create it.

I merged your other PRs, you just need to merge with the latest master and update this PR, then I will merge this one as well. Thanks for the contributions!

@joeattardi - My pleasure, thanks for the quick response!  I've merged the latest master, and this should be good to go.


An error occurs when you rotate the screen

Expected behavior
The user Expected to rotate the device screen and view his favorite albums in a more comfortable way.
Actual behavior
The user can not rotate the device screen to better display their favorite albums, because when rotating the screen an error occurs, which takes you out of the album and brings you to the Start menu
How to reproduce

Download the application.
Install.
Enter one of the albums of your choice.
Enter the details of the album or the statistics.
Rotate the device screen, in doing so, the application takes you to the Start menu

Browser: MusiQ V 1.615
Operating system: Android 5.1.1

Recording Of The Bug
https://youtu.be/DgVwQe6QEG0
Posted on Utopian.io -  Rewarding Open Source Contributors

ok the issue is fixed, but now. if rotate the screen i can't see the album inf.

Yeah I'm looking into this issue. It will take some time to fix. Thanks your help!

it's my placer, have a good time.

Okay I fixed this in the new release. The popup window is now scrollable and you can use it in horizontal mode as well :).


[Candidate 3v3 Cursed Hollows ZH v1] Units can drive a bit behind middle Supply Dock on one side, but not the other side

Observed behavior
Units can drive a bit behind middle Supply Dock on one side, but not the other side.
Expected behavior
Mirrored Supply Docks offer equal unit mobility opportunities.
Screenshots

wat

fixed


Update package.json

Reduce max bundle size from 44 to 38 (actual size is 35 Kb now)

Every bit helps thanks


problems when sql query contains comments

from Slack:

I know this thread is a little old. I updated to 0.10.3 today and some of the commenting issues appear to be resolved but this one is still broken. If I have the /* using join */ after the SELECT it generates all the rows, but if I include it before the SELECT I oddly only get back the last 5 rows.

thread: https://ploomber-io.slack.com/archives/C028KJCJDRT/p1700853699493899?thread_ts=1694819634.024439&cid=C028KJCJDRT

Is this still a problem?  Looks very scary since it potentially would go unnoticed.


Discuss support for ISO8601DateTimeObject validation / formatting

We should decide where that should be handled.
I am planning to add comparison function for DateTime in generic idempotence check.
I wonder if I should assume that the format was already prechecked / standardized.
Do you think this should be handled by Magic Modules?

Nope, MM has not done any validations for these types yet. So feel free to do it in idempotency check function.


Red-black tree etcpal_rbiter_lower_bound and etcpal_rbiter_upper_bound functions

I wrote the equivalents of std::set::lower_bound and std::set::upper_bound. This will be very useful for the merger implementation. I will be writing unit tests for this tomorrow.

Thanks, this looks good. I'm going to hold off on reviewing until you have the tests done, because I don't feel like re-familiarizing myself with the rbtree code enough to critique it right now XD

@samkearney @nwagner - This is ready to review now. The unit tests have been implemented.


Add --display-build-times option to install and upgrade

[X] Have you followed the guidelines in our Contributing document?
[X] Have you checked to ensure there aren't other open Pull Requests for the same change?
[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.

Would you consider a --display-build-times option for brew install and brew upgrade? This could be helpful to developers who are wrangling big installation trees.
I'm working on a big build with lots of dependencies (like 40 minutes total), and I'd like to see which of the dependencies are taking a lot of compilation time, so I know where to spend my efforts at making relocatable bottles, removing dependencies, or something else. I don't see a good way to do this with a custom brew command, since there aren't public API hooks into the installation process.
Adds output like this:
$ brew install --display-build-times -s arpack cowsay libpng                                                   display-build-times
==> Downloading https://github.com/opencollab/arpack-ng/archive/3.6.0.tar.gz
...
==> make test
==> make install
🍺  /usr/local/Cellar/libpng/1.6.34: 26 files, 1.2MB, built in 33 seconds
==> Build times
arpack               28.326 s
cowsay               3.063 s
libpng               33.318 s

A comment from left field: this looks similar to what will be needed for https://github.com/Homebrew/brew/issues/4057

Indeed it does. Though if we're going to both, might want to implement them differently to avoid cluttering up the main install/update code.

Stand by... a PR for a Caveats with a common message-collector design is incoming...

Here's a design for a generic-ish message collector, used for Caveats, and could be extended for build times: https://github.com/Homebrew/brew/pull/4361

not reinstall?

Added reinstall.
Changed all the names to use "install times" instead of "build times".
Will change this to use #4361 once that gets merged.

Go away stalebot; I'm still working on this.

I've rewritten this to use the message-collector mechanism from #4361.
Added unit test.
Also changed --display-install-times to a more generic --display-times, so if we end up having other operations that support displaying timings, they can just reuse the same option.

Nits addressed!

Thanks again @apjanke!

You're welcome! 🎉


Add GAFF forcefield

I know we're moving toward implementing smaller force fields, but I also think GAFF is a useful one to support.
I grabbed the sans SMARTS file from here and set up testing in almost the same way that OPLS was set up. This includes GROMACS topology files from here, specifically the GAFF/GROMACS link.
Felix @ftiet then added SMARTS strings for a handful of ionic liquids and organic molecules. Obviously this only covers a portion of the space that GAFF covers, but it's enough for us to do some science with and anybody can add more strings as needed. Fortunately GAFF only has a few dozen atom types, so it's much less work than OPLS.
Note that partial charges are not included in this XML because AMBER/GAFF assigns charges after atomtyping.

Sorry to just occasionally descend out of the ether with very little context, but I'm very interested by this.
Can I ask how you are able to go from the gaff.xml file to something useful? Specifically, how do you encode the atom typing/come up with the SMARTS? This seems to me naively to be sort of a research problem (or a "peer deeply into antechamber where no one dares to look" problem) (AH, update after looking more carefully -- it looks like one of you hand-created SMARTS for just a subset of GAFF. Have you verified that these are correct, e.g. by verifying that one gets the same parameters assigned via your SMARTS as would originally be assigned by, e.g., Antechamber -> tleap?)
I'd love to see this done someday for all of GAFF/GAFF2, but that's gonna be painful. You mentioned OPLS; have you done this for OPLS?

@davidlmobley At this point we've been doing definitions by hand (for OPLS we've done about 100 parameters from the database in gromacs).  However, we've sort of changed our approach, at least for the time being.  Instead of making a giant library (like converting the complete OPLS library), we've been focusing on smaller forcefield files for specific families (e.g., a forcefield file only for alkanes, one for perfluoroalkanes, etc.), where we've been going back to the original source to get the parameters and their usage (so we can encode the DOI usage in there).  These individual forcefields can be merged into a larger file, but part of the thought processes is that:

it's better to have our forcefield files be "compete" (i.e., all SMARTS defined), even those forcefield files cover fewer molecules
many of the parameters in those databases aren't very commonly used, so we're sort of focusing on common systems, or at least systems we do
It makes it easier to check/validate a forcefield file if it doesn't have as many parameters (so the smaller forcefield files makes it easier for validation, especially if doing some of it manually)

We've been having some offline discussions about this and the approach...might be good to have a chat with you in the future about what we've been doing and what is working/not working.

Let me take a stab at this, Andrew or Christoph may chime in if I miss or flub something.

Can I ask how you are able to go from the gaff.xml file to something useful? Specifically, how do you encode the atom typing/come up with the SMARTS? This seems to me naively to be sort of a research problem (or a "peer deeply into antechamber where no one dares to look" problem) (AH, update after looking more carefully -- it looks like one of you hand-created SMARTS for just a subset of GAFF.

Correct, right now we don't have a better way of generating SMARTS than doing it by hand. As you can imagine, this is both a tedious process and one that can be frustrating to do, so we've mostly been adding SMARTS strings on an as-needed basis.

Have you verified that these are correct, e.g. by verifying that one gets the same parameters assigned via your SMARTS as would originally be assigned by, e.g., Antechamber -> tleap?)

The testing that we do involves reading in a structure file with bond information but no atom types, applying the forcefield (using the XML file of interest) and comparing the atom types that foyer finds to reference topologies that we grabbed from virtualchemistry.org. I don't know how those topology files were generated, perhaps also including an Antechamber test would be useful.

I'd love to see this done someday for all of GAFF/GAFF2, but that's gonna be painful. You mentioned OPLS; have you done this for OPLS?

Correct, it's no small task. The scope of these SMARTS strings is what is of immediate interest to my research, only a small set of GAFF atom types. We also held off on adding a few atom types we looked at that had confusing behavior.
We have a partially/mostly complete version for OPLS and a somewhat complete version for TraPPE-UA, which you can find here. There are so many obscure and obsolete OPLS-AA atom types that we will probably never hit 100% coverage. Currently the coverage is enough that we are comfortably doing research with it - if you run into any missing atom types we'd be happy to add them in. With OPLS, we have been slowly adding SMARTS strings over time, and I hope to continue that with GAFF.

Here is a link to one of the "small" files (I'll be pushing some changes to this where we define metadata in an xml file, and the readme is automatically generated).
https://github.com/chrisiacovella/oplsaa_perfluoroalkanes
We'll be creating a lot more of these types of files.

Have you verified that these are correct, e.g. by verifying that one gets the same parameters assigned via your SMARTS as would originally be assigned by, e.g., Antechamber -> tleap?)

👍
This PR should definitely add validation against antechamber. That's pretty straight forward and provides a huge safety net.

I definitely should have seen that we don't need to use virtualchemistry.org's topologies. Fortunately this means we can draw any molecule we wish and we don't need to be limited by the molecules they selected. Oddly, the big GAFF zip on virtualchemistry.org didn't include simple molecules like benzene, ethane, etc.
Unless we want to make antechamber a new dependency, you're going to either have to validate that those files are legit (coordinate file represents the molecule it's named after, sensible atomtypes, etc) or take my word for it (probably not a great idea because I could have easily drawn a molecule incorrectly).
For each test molecule I changed, I

Drew the molecule with Avogadro and saved to pdb.
Called antechamber to atomtype the molecule:

antechamber -fi pdb -fo mol2 -i foo.pdb -o foo.mol2

I'm running into some weird issues associated with parmed reading chlorine and bromine atoms, as carbon and boron, but I'll push my changes once I figure that out.

Unless we want to make antechamber a new dependency, you're going to either have to validate that those files are legit (coordinate file represents the molecule it's named after, sensible atomtypes, etc) or take my word for it (probably not a great idea because I could have easily drawn a molecule incorrectly).

I think it would be just fine to put validation files into this repo and provide the script you used to generate them.

Drew the molecule with Avogadro and saved to pdb.
Called antechamber to atomtype the molecule:
antechamber -fi pdb -fo mol2 -i foo.pdb -o foo.mol2

You could probably use an already generated library like @davidlmobley's: https://github.com/MobleyLab/FreeSolv

I'm running into some weird issues associated with parmed reading chlorine and bromine atoms, as carbon and boron, but I'll push my changes once I figure that out.

This is when you load the .mol2 back in after the antechamber step? Not sure what all is contained in those .mol2 files but on parmed's end, this happens when you don't have explicit element information and it's trying to guess an element based on the atom name and e.g. it is not really possible to discern "CL" from "Cl".

Let me know if you are interested in FreeSolv and need any info; presumably you could also create subsets which only have specific atom types or only use specific parameters.

Here is parmed trying to load in the bromomethane in the FreeSolv database
@<TRIPOS>MOLECULE
bromomethane
    5     4     1     0     0
SMALL
No Charge or Current Charge

@<TRIPOS>ATOM
      1 C1          0.1360   -0.1000   -0.0730 c3        1 MOL     -0.039400
      2 Br1        -1.2950    0.9520    0.6960 br        1 MOL     -0.167900
      3 H1          0.8160    0.5790   -0.5900 h1        1 MOL      0.069100
      4 H2          0.6480   -0.6190    0.7390 h1        1 MOL      0.069100
      5 H3         -0.3050   -0.8120   -0.7720 h1        1 MOL      0.069100
@<TRIPOS>BOND
     1    1    2 1
     2    1    3 1
     3    1    4 1
     4    1    5 1
@<TRIPOS>SUBSTRUCTURE
     1 MOL         1 TEMP              0 ****  ****    0 ROOT

>>> bmm = pmd.load_file('mol2files_gaff/mobley_8983100.mol2')
>>> [a.name for a in bmm.atoms]
['C1', 'Br1', 'H1', 'H2', 'H3']
>>> [a.element for a in bmm.atoms]
[6, 5, 1, 1, 1]

I'll raise an issue with Jason if this should be supported and I'm not doing something silly.

Is ParmEd supposed to understand GAFF atom types? I don't normally use its mol2 reader much. I'd naively guess that's the problem you're running into -- that it doesn't know GAFF types (or doesn't assume them unless you ask it to?) so it just takes the first character in the type when it doesn't know and interprets that as the element.

that it doesn't know GAFF types (or doesn't assume them unless you ask it to?) so it just takes the first character in the type when it doesn't know and interprets that as the element.

That's precisely the problem. This has come up on a few occasions with the mol2 and gro readers.

What are trying to use it for? Can you just use it with the "true" mol2 files in FreeSolv (the ones with SYBYL/TRIPOS types)? Those should parse properly unless you NEED the GAFF types for some reason.
(One thing to keep in mind is that various tools in our field violate the file format specifications of particular formats; putting non-SYBYL atom types in a mol2 file is such a violation. This usually means only specialized tools will read such files. But going back to the correct format -- as I'm proposing in this case -- usually fixes the problem.)

We're using it as a correctly-atomtyped template as a reference in tests, so it requires that we read in GAFF atom type information. The tests read in structures, atomtype them with the force field of interest, and compare those generated atom types to whatever reference we provide.
However, this can also be achieved using GROMACS topologies in the FreeSolve library, which don't have the issue of guessing GAFF atom types:
>>> bmm = pmd.load_file('gromacs_original/mobley_8983100.top')
>>> [a.element for a in bmm.atoms]
[6, 35, 1, 1, 1]
>>> [a.type for a in bmm.atoms]
['c3', 'br', 'h1', 'h1', 'h1']
>>>

so that's probably the best route to go with this. The test passes using this approach.

Okay, that approach is working. I'm going to go back and add a handful of simple molecules to make this more likely to be used. Originally this PR was selfishly focused on molecules I wanted to use (ionic liquids and polar solvents).
For molecules outside of Mobley's set, what should our approach be? I can think of

Go back to drawing by hand
Only consider molecules in the Mobley set
Push it off to a point in the future

If the Mobley set covers all moieties we'd see in the wild, the second option would probably be best. I'm thinking of ionic liquids, where the molecules are somewhat complicated but the atom types are probably covered by simpler netural molecules. For example, I'd want to do simulations using a 1-ethyl-3-methylimidazolium cation that is obviously not included, but a similar molecule (1-methylimidazole) is, and would probably be sufficient for testing purposes.
@davidlmobley would it be accurate to say your database covers most or all of GAFF? I know that was not why it was constructed, but I would think 500-600 molecules comes close to the 50ish atom types in GAFF.

If the Mobley set covers all moieties we'd see in the wild, the second option would probably be best.

It definitely does not cover all moieties seen in the wild. We have some sets of molecules that include a lot more, plus there are others online. For example, you might look at DrugBank. But, you could also look at our MiniDrugBank, which is basically a subset of DrugBank that has essentially as much chemical diversity. https://github.com/open-forcefield-group/MiniDrugBank

would it be accurate to say your database covers most or all of GAFF? I know that was not why it was constructed, but I would think 500-600 molecules comes close to the 50ish atom types in GAFF.

No. There are almost certainly atom types from GAFF which are not used at all, though I don't think we've looked to see which those are. Also, by "covers" do you mean "uses all atom types" or "uses all parameters in..." (the latter is much harder than the former).
Basically, I can tell you that a FF can cover all of FreeSolv without even coming close to covering all of the chemical space one would want to cover in a "general purpose" small molecule force field. There's a lot of chemistry that just isn't there much at all.
(I have a plot somewhere showing the functional groups represented in DrugBank versus those in FreeSolv and there are various functional groups that just don't show up in FreeSolv at all. LMK if you want to see that.)

Also, by "covers" do you mean "uses all atom types" or "uses all parameters in..." (the latter is much harder than the former).

I mean "use all atom types", I'm sure there are various bond/angle/dihedral terms that would be difficult to hunt down. Even a few of the atom types in GAFF look somewhat esoteric, so my goal is more like "use enough of the atom types to cover a small section of chemical space." I see you cut off molecule size at 100 heavy atoms in MiniDrugBank - here we'd stop around 10.
I think my earlier comment implied I was going for a larger scope than I intend. For comparison, our coverage in OPLS is currently 89 atom types with 73 test molecules - far, far from complete (and as discussed earlier, will probably never be complete) but large enough to do some research with. It's not likely that you'd be able to throw an arbitrary drug molecule at this code and be confident it finds all atom types accurately, but likely that it finds most atom types and any missing or incorrect ones can be corrected for by modifying SMARTS strings or overrides.
My current thinking is that doing a few dozen molecules in the Mobley set would be a sufficient starting point for this PR and be the best way to test the implementation of this force field in foyer - sound good @ctk3b ?

That sounds like a reasonable start to me but make sure you provide detailed instructions/scripts for how the test data was gathered.

I went through and added/modified a few atomtypes and many test molecules. There are still plenty of unsupported GAFF atom types but this is a start. I'm certainly open to doing more if we want to start out with a more complete and more rigorously tested starting point.
For each test molecule, I looked to see if it was in the database.txt included in FreeSolv. These lines look like this
mobley_2068538; CCC; propane; 2.00; 0.20; 2.50; 0.02; 10.1039/P29900000291; 10.1021/acs.jced.7b00104; Experimental uncertainty as suggested by 10.1039/P29900000291 -- 0.2 kcal/mol.

where only the first ("mobley_name") and third (common name) columns are important for our purposes. I then copied the .top and .gro files into the testing directory:
mkdir propane
cp ~/software/FreeSolv/gromacs_original/mobley_2068538.* propane/

and added propane to implemented_gaff_tests.txt.
I did not change the file names to propane.top and propane.gro. I also did not automate this process; perhaps that would be useful if we were looking to add all or most of the Mobley set, but I'm not set on doing that. There are probably plenty functional groups and drug molecules that would cause us headaches.

Incidentally, I recommend never using compound names as filenames as they can contain italics, french braces, commas, spaces, and other commas which are a real pain to deal with.

(directory names either, for that matter).


[KBM] Allow additional modifiers

I would like to be able to map keys to modifiers that are not in general use. There are a couple of ways I can think of doing this:

Allow keys to be toggled as modifier keys, e.g. I could map the key [right alt] to vk0, then toggle vk0 to be a modifier, then map vk0 + A to [HOME].
Invent new modifier keys e.g. similar to the above example, I could map the key [right alt] to [virtual mod 0], then map the shortcut [virtual mod 0] + A to [HOME].
Expose modifier keys that are not on the keyboard. e.g. My keyboard does not have the Alt Gr key on it, thus the Alt Gr key does not show up in the list of possible keys that I can map to. Maybe there are other modifier keys that already exist that can just be allowed to be added? I know Alt Gr is already baked into windows and maybe can just be exposed, is mod/meta/extend/super/etc. already baked into windows as well?
Similar to #4584 allow more combinations to be mapped to a key. I cannot map they key combo [alt + ctrl] to [right alt], but if I could, I would essentially have access to the alt gr key. By allowing keys to be mapped to combinations of the 4 modifier keys that aren't generally used (ctrl + win, alt + win, alt + shift, shift + win) it's possible to essentially hack new modifiers in with the combinations of mapping keys and shortcuts.

This is especially important on laptops and reduced keyboards, Go !

@eractnodi
can you provide an example for 1. and how it will work?
If I understand it correctly, you want to be able to make any key, for example the letter z, to work as a modifier, correct?
And then map z + a to HOME, correct?
In what context would you use it? I would expect in a text editor or in a input textbox, correct?
Letters generates input when pressed, not when released, so how would it work since pressing z + a would send z and a to the app as soon as the two keys are pressed.

Jumping in despite not being OP. I think what they mean is what I mean, is we want to be able to map any combination of existing modifier keys on the keyboard to map to any other modifier, so we can access all modifiers from all keyboards. In my example my right shift key is broken, so I would want for example alt-win to map to rightshift, so that i could do alt-win-leftshift to type leftshift-rightshift and free the mouse from my apple II emulator window. As it is now i have to fetch a usb keyboard for my laptop when I need to use that program.

@enricogior
In the example you gave of  z + a to HOME if done via example 1, the ability to type a z would be orphaned when the z key is remapped/toggled to become a unique modifier key. Later I could remap a short cut to make z(mod) + q = z(char).
I am currently using keyboard manager to reduce the need to leave the home row for symbols. For one example, I have remapped caps lock to left alt, then using shortcuts I have implemented left alt+ space = _, now I can press the caps lock key and the space bar together to get _. Unfortunately, because alt is a generally used by applications, my shortcuts that enable me to use symbols from the home row removes the ability to use some application short cuts, and sometimes I roll between shortcuts instead of distinctly typing them and I trigger application shortcuts instead of the keyboard manager shortcuts I intended. If I were able to map caps lock to be a unique modifier, or to be a modifier not used commonly by other applications, or even a combination of modifiers that are not commonly used by other applications my experience would be much better.
I believe condition 4 might be the easiest to implement. I am currently able to map left alt to left alt + shift + a, but not just alt + shift. Condition 4 is also (I believe) the condition that @RonnySvedman has requested.

@eractnodi
thanks for the detailed explanation.
Our current plans are to improve the KBM reliability for the existing functionalities and try to fix all the known bugs (this is part of the stability milestone that involves a similar work for all modules, so it will take some time).
After stability I really hope we will be able to implement most of the suggestions from the community.

Just another use-case: I want to remap my caps lock to something like F13, then use F13 as a modifier for various shortcuts a la hyper key. On mac I do this with karabiner-elements, then I have all sorts of app-switching commands mapped, like hyper-b opens my browser, or switches to it.

I think similar to @bdcarr and others suggestions, using F13 or Virtual keys as a modifier would allow things like: Capslock > F13 and Capslock(F13) + L = Right Arrow. This would simulate what's found on the 60% keyboards for those of us switching between a 60% and a laptop keyboard.

I'd just like to suggest a small expansion to the feature were beyond rebinding to existing keys we could just have "virtual modifiers".
This means the key could be held down without interfering with any other function making it easier to fast typing or edits.
Example would be having Capslock has a VMOD1 with ijkl rebound to navigation arrows while still allowing all other keys to work as you'd expect.
Currently I'm forced to use Ctrl (right) which means anything I haven't rebound will act as if ctrl is down occasionally triggering unwanted shortcuts.

I'd just like to suggest a small expansion to the feature were beyond rebinding to existing keys we could just have "virtual modifiers".
This means the key could be held down without interfering with any other function making it easier to fast typing or edits.
Example would be having Capslock has a VMOD1 with ijkl rebound to navigation arrows while still allowing all other keys to work as you'd expect.
Currently I'm forced to use Ctrl (right) which means anything I haven't rebound will act as if ctrl is down occasionally triggering unwanted shortcuts.

Bumping this one, came for suggesting a solution for the capslock + jikl navigation (I do that myself, easy on keyboards with VIA layers but not on normal ones) but I just can't deal with only ctrl, alt and windows as modifiers for this.

This is required to implement advanced layouts like neo6, and layers along with improved editing would be nice also navigation layers like on a uhk where mod uses jkli as cursors with home end on yo  and pageup/pagedown on yh
implementing layer lock with double tap would be super nice.


Cannot delete wallet

The delete wallet settings option does not seem to work.
To Reproduce

Open app
Goto "Settings"
Select "Delete wallet"
Enter PIN
Proceed and click "Delete wallet" button
Wait for the delete timer to expire
Click "Delete" button to confirm

Expected behavior
Wallet is deleted
Actual behavior
Nothing happens and delete timer is restarted until it expires and the "Delete" button can be pressed again.
The wallet seems to be in a bad state after having pressed the "Delete" button. When returning to the settings screen and selecting the "Delete wallet" again, entering the PIN code results in the following error.
Invalid argument *data). Less than minimum length (12 + 16). _Uint8List
Syrius Mobile

Version: v0.3.0
OS: Android 14, Samsung Galaxy S24

Workaround
Uninstall app using Android.

Fixed in v0.5.2.


What are vat.xi and vat.eplison optimal values?.

In your implementation vat.xi = 1e-6, and when you do
vat.xi * d # is the random unit vector
It is close to zero right?, whether vat.xi should be greater than 1.
I am confused between vat.xi and vat.eplison ? can you clarify this
thanks in advance

Please see Section 3.3 in this paper: https://arxiv.org/pdf/1704.03976.pdf.
xi is used for the approximation of Hessian-vector product while the epsilon is the norm constraint of the adversarial perturbation.

thanks.. Now I understood, that vat.xi is 1e-6 for the finite difference method.


有考虑做rxjava的插件吗

Issue Description
Type: bug report or feature request
Describe what happened (or what feature you want)
Describe what you expected to happen
How to reproduce it (as minimally and precisely as possible)

Tell us your environment
Anything else we need to know?

Will not support it for the time being, but welcome to submit PR.


Files are not refreshed even after new updates

goreportcard reports invalid files from old changes:
https://goreportcard.com/report/github.com/t3rm1n4l/nitro talks about memdb.go which does not exist in the latest repo anymore. I have tried refreshing couple of times and it did not help.

Could you guys please remove the repo cache for github.com/t3rm1n4l/nitro ?

@t3rm1n4l sorry I haven't had a chance to look into this sooner. It seems like the diskstore branch is checked out on our server - was that the default branch at some point? Just trying to figure out the root cause here.
In any case, I checked out the master branch and refreshed it - looks good now. Let me know if you run into any more issues.

Thanks a lot


Follow link activates with Cmd and mouse over instead of click

Issue Type: Bug
The link opens when I'm holding Command and hover it with the mouse, instead of clicking it; sometimes it's not the link I want to click, but go over it with the mouse pointer, and end up opening a page I didn't want.
I'm using vscode mainly for terraform, I don't know if it's a default behaviour or an issue with the extension.

Where do you hover over links: editors, markdown preview, terminal, or other specific place?
Checked on Windows in editors, markdown preview, extension details, and terminal and it doesn't happen here.

Definitely something wrong with the terraform extension. Opened a golang source, wrote a URL in the terminal and in the editor, all cases the click was needed. I'll raise a ticket there. Thanks!


chore(master): release 1.1.27

:robot: I have created a release beep boop
1.1.27 (2023-08-17)
Miscellaneous

deps: update dependency orchestra/testbench to v8.8.3 (b4af27a)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wayofdev/laravel-stripe-webhooks/releases/tag/v1.1.27 :sunflower:


[TASK] Filter unnecessary fields before uploading

Description
Some fields (e.g.: 'name' in the sub-event list in the super event) that are not in the schema in the event document should be removed before uploading to the building block.
Acceptance Criteria
These unnecessary fields are removed before uploading.

@clav1d I think this is done. please confirm. then we can close it.

@clav1d I think this is done. please confirm. then we can close it.

I checked and there still some fields didn't get deleted before uploading to the building block like "name" in the sub-events array,

I will check it throughout and fix it this week.


Use voxelized geometry solution between two arbitrarily defined points

Apply the 1-d toy problem with voxelized geometry and a voxelized solution and use the capability between center points of voxels. The current implementation starts at the left side of the start voxel and goes until the left side of the end voxel. Alter this calculation to look at the center of the voxels when computing.
New scope: in order to more easily validate/verify. Work from some arbitrarily defined point in one voxel to some arbitrarily defined point in another voxel (possibly the same voxel). This should primarily affect the calculation of tau.
Additionally update tester methods for new expected output.

I think this is just a special case of #23 where your "sampled" points are just the center points.  It probably doesn't make sense to do a special case for just center points.

Or better, replace this (or redefine it) as an issue to do one arbitrary point in i to one arbitrary point in j and then let #23 focus on the sampling/averaging part.

An issue I am encountering when working on this feature is determining the shape of the matrices.
The goal as described in the Neutronics Theory doc states we are given a voxelized geometry and return a voxelized solution. When considering an arbitrary location within a voxel, I am not certain how to maintain a voxelized solution.
Is the expected solution one value depicting the flux going from the start location to the end location?

An update from Slack convos: limited changes should be made other than within the tau calculation. The near term step is to move point 1 away from the left edge of voxel 1 and move point 2 away from the left edge of voxel 2, and figure out a way to determine tau. Future steps will include sampling points within the voxel and averaging to approximate the integrals described in Lewis and Miller.


Make sure request scope is propagated to newly created threads in FT

After discussing the solution with @jansupol, I believe this is currently the simplest way to support this. We do need to create a dummy CDI bean with an injection point for Jersey to make its RequestScope type available via CDI. Using that and some other CDI classes, we ensure all injections (@Context or @Inject ones) are available in newly created threads.
One of the functional tests has been updated to verify this fix.

/trigger


Avoid using $ in factory and service names

PR to address #335. It didn't seem worth its own rule, so I added to the existing factory naming rule.

ty

closes #335


Added the basic outline of the project

Added all the shared code as mentioned in #1. All I have to do is write tests now. I can start writing them but I've not figured out writing modular tests yet, i.e., for ex., A test case for MultitenantAdminMixin which can be extended.

Changes Unknown when pulling 89f55f63052ded5940626828fd9819ca4f713b42 on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling d7a6f6a9f57e691cd49c7c1e663514e7fe74e62b on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling d7a6f6a9f57e691cd49c7c1e663514e7fe74e62b on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling eceb5ec8afa946b8d93cf1b6d5fff0cf2cd933b1 on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling d24e486abeae409afa684c3877ceff5dce49df55 on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling 0082347afa7bb19cb91335bc78901f260beb608c on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling c1df183f95019666a5cc31e72d81b2d0f0c33537 on rohithasrk:testing into ** on openwisp:master**.

Changes Unknown when pulling 78479446db992be8faea78d95656fde18e2b8c65 on rohithasrk:testing into ** on openwisp:master**.

This PR references #3 too. There are some test fail issues that we're facing. Can we create a new issue @nemesisdesign?

@rohithasrk yes

Changes Unknown when pulling 3c8ca0a14c7211b2c2b77b2b807a1e7315033679 on rohithasrk:testing into ** on openwisp:master**.


ci: Fix FilterLine test matchers and related specs

Current matchers implementation makes policy related specs always pass
even when value is present in the output. This patch updates
ExpectContainsFilterLine and ExpectDoesNotContainFilterLine matchers
to match expected value against string slice rather than slice of
FilterBuffer. This patch also updates policy specs to use
ExpectContainsFilterLine matcher where applicable. Minor consistency
changes were also added to policy specs.

Coverage increased (+0.006%) to 36.909% when pulling 191ee8bb9b59913b8fb0d2e9343d50ec971c5cf6 on ap4y:audit-mode-verdict into b7be1c000760bbdcb00c88b6c686334cc22150e5 on cilium:master.

test-me-please

@gandro I have reversed matchers a bit (wait on trace reply and check policy-log) to prevent this potential race condition. I have tested this few times and it seems to be working well.

@gandro I have reversed matchers a bit in egress test (wait on trace reply and check policy-log) to prevent this potential race condition. I have tested this few times and it seems to be working well.

Oh, I did not catch that! Even better than, thank you!

retest-4.9

retest-net-next

retest-4.19

net-next failed on unrelated flake, merging

net-next failed on unrelated flake, merging

Looks like this never made it into the v1.8 branch. But we are using it in some Hubble tests (e.g. regression test) that we sometimes backport along with bug fixes. Marking for backport.


[QUESTION] How to enable Hash Passwords in OpenLDAP

Hi All
Can you help me, I need to enable password hashing at openLDAP level
I need to have situation where clients send password in PLAIN_TEXT and openLDAP store this as {SSHA}
I would like to enable this:
http://xacmlinfo.org/2015/06/25/enable-hash-passwords-in-openldap/
but I do not know how to do this during container configuration

While this does do it, it fails if you try to do it normally, like with:
ldapadd -x -D cn=admin,dc=example,dc=com -W -f add_ppolicy.ldif
Instead, you have to use this:
ldapadd -Q -Y EXTERNAL -H ldapi:/// -f add_ppolicy.ldif
This is due to the cn=config having different authentication going on. I didn't know how to change it, but was able to get this command by poking around in this guide.
Thank you @xd34, you saved me so much extra trouble trying to sort this out. I'll suggest though, as you've solved this, to close the issue maybe. Cheers.

hello, guys, how to enable hash passwods with docker-compose.yml

Solved:
Load the ppolicy module
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: ppolicy
Enable the overlay and its hash_cleartext policy
dn: olcOverlay={2}ppolicy,olcDatabase={1}mdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcOverlay: {2}ppolicy
olcPPolicyHashCleartext: TRUE

@xd34 hello, buddy, are load module and overlay module write in different file? and what path in container do they place in? please help, thanks a lot!

Solved:
Load the ppolicy module
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: ppolicy
Enable the overlay and its hash_cleartext policy
dn: olcOverlay={2}ppolicy,olcDatabase={1}mdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcOverlay: {2}ppolicy
olcPPolicyHashCleartext: TRUE

@xd34 hello, buddy, are load module and overlay module write in different file? and what path in container do they place in? i use docker-compose, so i wanna know what place in container are they mount. And is there need other operation after mount? please help, thanks a lot!

solved

two module write in different file.
we can mount file in container anywhere
get in openldap container use cmd ldapadd -Q -Y EXTERNAL -H ldapi:/// -f path_you_mount_in_container/whaterver.ldif

load-ppolicy.ldif
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: ppolicy

overlady-ppolicy.ldif
dn: olcOverlay={2}ppolicy,olcDatabase={1}mdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcOverlay: {2}ppolicy
olcPPolicyHashCleartext: TRUE

log
root@ubuntu:/etc/ldap/slapd.d# ldapadd -Q -Y EXTERNAL -H ldapi:/// -f load-ppolicy.ldif
modifying entry "cn=module{0},cn=config"

root@ubuntu:/etc/ldap/slapd.d# ldapadd -Q -Y EXTERNAL -H ldapi:/// -f overlady-ppolicy.ldif
adding new entry "olcOverlay={2}ppolicy,olcDatabase={1}mdb,cn=config"

root@ubuntu:/etc/ldap/slapd.d#


[Feature/extensions] First draft of adding support for dynamically registering actions

Description
With extensions, we would like to register actions during runtime of OpenSearch and not only during bootstrap.
This PR enables ActionModule in OpenSearch core to register transport actions dynamically.
Issues Resolved
https://github.com/opensearch-project/opensearch-sdk-java/issues/107
Check List

[ ] New functionality includes testing.

[ ] All tests pass

[ ] New functionality has been documented.

[ ] New functionality has javadoc added

[x] Commits are signed per the DCO using --signoff
[ ] Commit changes are listed out in CHANGELOG.md file (See: Changelog)

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

ChangeLog action failing, I'll wait for https://github.com/opensearch-project/OpenSearch/pull/4479 to merge and then rebase. Because it will eventually end up in conflicts.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':server:spotlessJavaCheck'.
> The following files had format violations:
      src/main/java/org/opensearch/node/Node.java
          @@ -1022,7 +1022,8 @@
           ············resourcesToClose.add(injector.getInstance(PeerRecoverySourceService.class));
           ············this.pluginLifecycleComponents·=·Collections.unmodifiableList(pluginLifecycleComponents);
           ············client.initialize(injector.getInstance(new·Key<Map<ActionType,·TransportAction>>()·{
          -················}),·injector.getInstance(ActionRegistry.class),
          +············}),
          +················injector.getInstance(ActionRegistry.class),
           ················()·->·clusterService.localNode().getId(),
           ················transportService.getRemoteClusterService(),
           ················namedWriteableRegistry
      src/test/java/org/opensearch/client/node/NodeClientHeadersTests.java
          @@ -32,7 +32,6 @@

           package·org.opensearch.client.node;

          -import·org.opensearch.action.ActionModule;
           import·org.opensearch.action.ActionType;
           import·org.opensearch.action.ActionListener;
           import·org.opensearch.action.ActionRequest;
      src/test/java/org/opensearch/snapshots/SnapshotResiliencyTests.java
          @@ -38,7 +38,6 @@
           import·org.opensearch.ExceptionsHelper;
           import·org.opensearch.Version;
           import·org.opensearch.action.ActionListener;
          -import·org.opensearch.action.ActionModule;
           import·org.opensearch.action.ActionType;
           import·org.opensearch.action.RequestValidators;
           import·org.opensearch.action.StepListener;
  Run './gradlew :server:spotlessApply' to fix these violations.

Unrelated failures :/

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':example-plugins:custom-suggester:yamlRestTest'.
> process was found dead while waiting for ports files, node{:example-plugins:custom-suggester:yamlRestTest-0}

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
==============================================================================

2: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':plugins:discovery-gce:qa:gce:yamlRestTest'.
> process was found dead while waiting for ports files, node{:plugins:discovery-gce:qa:gce:yamlRestTest-0}

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
==============================================================================

3: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':plugins:discovery-ec2:qa:amazon-ec2:yamlRestTestContainerCredentials'.
> process was found dead while waiting for ports files, node{:plugins:discovery-ec2:qa:amazon-ec2:yamlRestTestContainerCredentials-0}

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
==============================================================================

4: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':rest-api-spec:yamlRestTest'.
> process was found dead while waiting for ports files, node{:rest-api-spec:yamlRestTest-0}

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
==============================================================================

Thanks for the feedback @dbwiddis, @owaiskazi19 !
Conflicts causing problems. Im sending out a clean PR and closing this one.


Tweak implemetation of hotkey method

Description
I would like to add support for more hotkey events. I have been digging through
https://github.com/louisnw01/lightweight-charts-python/blob/8f65a7fc964c9fb54162925e1e5fae417c421a9a/lightweight_charts/abstract.py#L851
And it it is prefixing every string with Key. This is great for simplifing adding number and letter hotkeys, but I dont think it is possible for some of the other keys like space bar and arrow keys.
Code example
Here is my code example
chart.hotkey('shift', 'Space', pause_event)

This generates this is javascript
window.obpbhfcp.commandFunctions.unshift((event) => {
                if (event.shiftKey && event.code === 'KeySPACE') {
                    event.preventDefault()
                    window.callbackFunction(`('shift', ('space',))_~_space`)
                    return true
                }
                else return false
            })

This issue is the js keycode for space is Space not KeySPACE.
Method of implementation
Here is a spacebar event for example

What are your thoughts on letting the user pass an explict js key code? Also what are your thoughts on allowing the user to not have to specify a modifier key?
I could volunteer to help with this, I just want to make sure I am taking the right approach out of the 2:

Add in a js_keycode=False kwarg and handle no modifier and the js_keycode accordingly. Would help not introduce breaking api changes.
refactor the hotkey method and update the examples and docs

What would you reccomend? Thanks

Well actually, I dont think I can do what I am saying without change the order of the function signature to make the modifier keys optional

Merged; I also made a few modifications myself to allow for key commands which involve a modifier key and a non alphanumeric key (eg alt+]).
Let me know what you think!

Awesome!


Raft single-mode does not work well

I test raft with single-mode, config like
"RaftEnabled": true,   "RaftDataDir": "/export/Data/orchestrator",   "RaftBind": "<IP_ADDRESS>",   "RaftAdvertise": "<IP_ADDRESS>",   "DefaultRaftPort": 10008,   "RaftNodes": [     "<IP_ADDRESS>"   ]

it doesn't work well
After change code from
if len(peerNodes) == 0 && len(peers) <= 1 { 		log.Infof("enabling single-node mode") 		config.EnableSingleNode = true 		config.DisableBootstrapAfterElect = false }
to
if len(peerNodes) <= 1 && len(peers) <= 1 { 		log.Infof("enabling single-node mode") 		config.EnableSingleNode = true 		config.DisableBootstrapAfterElect = false }
it's work well。
Can you accept a new PR change
len(peerNodes) == 0
to
len(peerNodes) <= 1
Or there are other design ideas I do not understand？
thank you.

@davygeek Thankyou. Before answering, I'm happy if you can please describe what "doesn't work well" means. What do you get? What do you expect?
I do believe I see the issue, though. To quickly make single-raft-node work for you, please specify "RaftNodes": [],.
I agree your setup is expected to work. However, I'm unsure whether if len(peerNodes) <= 1 is the correct solution since we must test the value specified in your RaftNodes matches the value in RaftBind.

Please see https://github.com/github/orchestrator/pull/440


[Bug] breaking change in 7: TryGetPayloadValue() changes the type of returned object (compared with Identity.Model 6.x) for the "aud" claim

Which version of Microsoft.IdentityModel are you using?
Note that to get help, you need to run the latest version.
Where is the issue?

[ x ] M.IM.JsonWebTokens

Is this a new or an existing app?
Following-up the removal of NewtonSoft.json, the actual claim type  returned by TryGetPayloadValue when passing object, is different. For instance:
If we are trying to get the value of the audience claim("aud"), when there is a single audience, previously subjectToken.TryGetPayloadValue("aud", out object claimValue) would retum claimValue as a string.
With Wilson 7.0.0, the claimValue retumed as a IList.
It is important for customers to maintain the same type.
Repro
subjectToken.TryGetPayloadValue("aud", out object claimValue);
Assert.True(claimValue is string);

Expected behavior
The claimValue for "aud" should be a string
Actual behavior
The claimValue for "aud" is now an IList (with one element)
Possible solution
Return a string if there is only one audience.
Workaround
subjectToken.TryGetPayloadValue("aud", out string claimValue);
Assert.True(claimValue is string);

fixed


target = "_ blank"

I can from the adminlte menu, configure a
target = "_ blank" for the link of one of my menus?

'target' => '_blank',

@hernandoglobal That is missing on the documentation. I will add it later...


🧪 Add Test & Lint

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 Version Constraints to [build-system] for More Reliable Builds

Scenario
The current [build-system] configuration in pyproject.toml does not specify version constraints for critical build tools like setuptools, wheel, and pip. This omission results in unreliable builds, particularly in older environments (e.g.,  Python 3.7.4).
The [build-system] list is NOT the same as the dependencies list:

[build-system]: Specifies the tools (e.g., pip, setuptools, wheel) required to build the package. These tools are used in an isolated build environment and are not installed as runtime dependencies for end users.
dependencies: Specifies the libraries required to use the package and are installed in the user's environment at runtime.

The current [build-system] configuration:
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"

Does not specify minimum versions for setuptools, wheel, or pip.
Relies on the user's environment to provide these tools, which may default to outdated versions in Python 3.7.4, causing errors during the build process.

Consequences
Without proper [build-system] version constraints:

Older versions of pip, setuptools, and wheel might fail to handle modern build requirements (e.g., PEP 517/518).

Users might encounter errors such as failed builds for dependencies (e.g., pandas).

Users are forced to manually upgrade build tools:
pip install --upgrade pip setuptools wheel

This extra step is inconvenient and error-prone.

Proposed Solution

Update the [build-system] section in pyproject.toml to include version-specific constraints:
[build-system]
requires = [
    "setuptools>=68.0.0",
    "wheel>=0.42.0",
    "pip>=24.0.0"
]
build-backend = "setuptools.build_meta"

This will ensure that the build environment automatically uses the correct versions of these tools, avoiding issues with older default versions.

Upon further investigation, it has been determined that the issue only occurs in Linux environments but works fine in conda environments. This is NOT exclusive to this package or library.
It could be due to differences in how dependencies are managed and installed between the two environments.
Why It Works in Conda and Not Linux Pip
Prebuilt Wheels:

Conda often provides prebuilt binary packages for dependencies like pandas, so there’s no need to build them from source.
In Linux pip environments, pip may attempt to build from source if a compatible wheel isn’t found, which requires system libraries (like gcc, zlib, libopenblas, etc.) that might not be present.

System Libraries:

Conda handles system-level dependencies (e.g., BLAS, LAPACK, zlib) automatically when you install a package.
Pip relies on the system’s existing libraries, which may be missing or outdated in Linux.

Global Environment vs. Virtual Environment:

In a global Linux pip environment, outdated pip, setuptools, or wheel may cause failures. Therefore the end-user must automatically update those packages:
pip install --upgrade pip setuptools wheel

Conda ensures an isolated, up-to-date environment.


Support an option on install-powershell.sh for installing the daily builds of PWSH

Need an option for installing daily builds using install-powershell.sh. This is required for other GitHub repositories like PowerShellGet, OneGet, etc.,

install-powershell.ps1 supports this, I think that should be sufficient once you have a version of PowerShell installed.


Helm Dependency Update Fails for all SubChart Dependencies

Helm Dependency Update Fails for all SubChart Dependencies
Output of helm version:
version.BuildInfo{Version:"v3.11.3", GitCommit:"66a969e7cc08af2377d055f4e6283c33ee84be33", GitTreeState:"clean", GoVersion:"go1.20.3"}
Output of kubectl version: kubernetes-cli 1.27.1
Cloud Provider/Platform (AKS, GKE, Minikube etc.): EKS
I am trying to download subchart dependencies using helm dependency update, its failing for all Chart.yaml Configurations
apiVersion: v2
appVersion: v2.6.7
kubeVersion: ">=1.22.0-0"
description: A Helm chart for Argo CD, a declarative, GitOps continuous delivery tool for Kubernetes.
name: argo-cd
version: 5.29.1
home: https://github.com/argoproj/argo-helm
icon: https://argo-cd.readthedocs.io/en/stable/assets/logo.png
sources:

https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd
https://github.com/argoproj/argo-cd
keywords:
argoproj
argocd
gitops
annotations:
artifacthub.io/changes: |

kind: fixed
description: Namespace field for some namespaced resources needs to be evaluated via helm root scope
dependencies:

name: argo-cd
version: "5.29.1"
repository: "https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd"

OR
apiVersion: v2
name: aws-load-balancer-controller
description: AWS Load Balancer Controller Helm chart for Kubernetes
version: 1.4.6
appVersion: v2.5.2
home: https://github.com/aws/eks-charts
sources:

https://github.com/aws/eks-charts
keywords:
eks
alb
load balancer
ingress
nlb
dependencies:
name: aws-load-balancer-controller
version: "1.4.6"
repository: "https://github.com/aws/eks-charts"

for any chart.yaml I am getting same issue as below err:
### ERR:
argocd % helm dependency update
Getting updates for unmanaged Helm repositories...
...Unable to get an update from the "https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd" chart repository:
failed to fetch https://github.com/argoproj/argo-helm/tree/main/charts/argo-cd/index.yaml : 404 Not Found
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "eks" chart repository
...Successfully got an update from the "datadog" chart repository
Update Complete. ⎈Happy Helming!⎈
Error: no cached repository for helm-manager-8057aea350e3ae9dae2012b72d29620f98a7a72ab5f5dc7dd5298ab79a42b58d found. (try 'helm repo update'): open /Users/kloudzip/Library/Caches/helm/repository/helm-manager-8057aea350e3ae9dae2012b72d29620f98a7a72ab5f5dc7dd5298ab79a42b58d-index.yaml: no such file or directory

Found the issue, I was using the wrong target to resolve the dependency
we need to use  from helm repo add  but I was using different, so it was not resolving


Added how to use tailwind with yew

Description
Added how to use tailwind with yew in documentation.
Very helpful for beginners like me.
Checklist

[ ✓] I have reviewed my own code

makes sense thanks!

should i add it to the latest versioned documentation or add it to the next documentation? for now added to the next documentation, but please let me know i will change if needed asap

Added to the next version of docs please let me know if it needs to be in the versioned docs 0.20 instead of the latest docs


[Core] Allow opt-in retry of MSI auth on connection or timeout error

Related command
Many commands utilize the MSI wrapper.
Description
This PR provides environment variables to enable retrying retryable errors when performing MSI authentication. Three variables are provided:

$AZURE_CLI_MSI_RETRY_ENABLED (default off)
$AZURE_CLI_MSI_RETRY_COUNT (default 3)
$AZURE_CLI_MSI_RETRY_DELAY (default 15)

This is desirable because we have observed many issues where we use the az CLI within ACI instances to perform operations which fail due to seemingly transient network issues. We believe retrying on (e.g.) 'broken pipe' errors or timeouts is both safe and will ensure fewer deployment fails. We have observed this dozens of times in the last two to three weeks and believe many other teams are negatively impacted.
Testing Guide
Unclear -- this code's unit tests all override the class being modified. However, this code should be easily testable by simply setting $AZURE_CLI_MSI_RETRY_ENABLED to true and utilizing any commands which require MSI auth.
History Notes
[Core] Add environment variables to control attempts to retry MSI authentication. $AZURE_CLI_MSI_RETRY_ENABLED = 'true' enables retries, and $AZURE_CLI_MSI_RETRY_COUNT and $AZURE_CLI_MSI_RETRY_DELAY control the number of retries, and seconds between retries respectively.

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR title and description has followed the guideline in Submitting Pull Requests.

[x] I adhere to the Command Guidelines.

[x] I adhere to the Error Handling Guidelines.

Core

We plan to migrate Managed Identity's implementation from msrestazure to MSAL (https://github.com/Azure/azure-cli/issues/25860). You may submit a feature request at https://github.com/AzureAD/microsoft-authentication-library-for-python.

@jiasli what's the timeframe for the ADAL migration? We're having pretty widespread issues today with (e.g.) broken pipe errors across many pipelines that force manual retries/user intervention, and I believe that this is widespread. The item you linked is open and from several months ago. I am concerned that a migration timeline (along with adding resilience in the ADAL Python library) will lead to significant delays in addressing this behavior.

@doubleyewdee, we no longer rely on ADAL and will drop it soon.
Even if we migrate to MSAL for managed identity authentication, if MSAL doesn't add the retry mechanism, Azure CLI won't have it either.
If this issue is urgent, I would recommend contacting ACI service team and let them investigate the network issue. Managed Identity should be reliable. It is not really the client's responsibility to retry. cc @rayluo

I would push back a little that clients shouldn't also participate in retries. It's not actually possible to have a 100% reliable network (either client or server side), and retries are routinely valuable for tail reliability

Sorry I didn't make it clear. I don't mean a client shouldn't retry, but the client shouldn't take the main responsibility.

Back to my question, what's the timeline for the MSAL library migration?

We are working on https://github.com/Azure/azure-cli/issues/25860, but there is currently so specific ETA yet. I will bring this ask to our Product Managers.

When should we be on the lookout for behavior here and whether we might want to ask for retry options in the MSAL lib?

My personal opinion is that MSAL lib is a better place to add the retry logic, as other tools using MSAL can benefit from it.

@jisali thanks for the updates and linked item! we'll wait for the MSAL migration and follow the items you've linked.

My personal opinion is that MSAL lib is a better place to add the retry logic, as other tools using MSAL can benefit from it.

For the record, the default retry logic does already happen in MSAL lib. It is just that "how (many times) to retry" configuration is owned by calling app, because there is unlikely to be a one-size-fits-all configuration here. For that reason, MSAL also exposes an API to customize that retry behavior, it is just that the API is not in the form of retry_count (or retry_delay, for that matter).

@rayluo I'd like to get this exposed in a manner roughly similar to what this PR suggested (not clear if delay/etc need to be supported vs. simply supplying a count) but will need to wait for the actual az MSAL migration it seems.
My team is going to attempt to wrap all our az calls with retries in the interim, but we're being bitten very badly here by some combination of Azure-owned things (e.g. in certain regions we have 10%+ failure rates here at times) so I think we need a holistic solution for both our 1P and 3P customers that is superior to what's on offer today.


OdTable.GetObjectOdRecords pulling records not attached to objects

When OdTable.GetObjectOdRecords is run on an object with a list of tables currently in the drawing, it seems to return records that are not attached to the object.

Test DWG and DYN used for above screenshots:
GetObjectOdRecords Test.zip
p.s. If I am misusing the node, I apologize.

fixed in 1.1.25


Add drop-down feature for SSID selection and add CSS styling

Added dropdown menu for SSID selection and add CSS style sheets. Should close #9 and #10

@RichardPilbery Hi there - thanks for this, and sorry for the slow response.  I'll get around to testing this and merging it if all looks good.  Would love to know what you're building!

UI looks great! SSIDs are sorted by strength (I have two networks close by, my home network is listed first).

Success message:

Homepage of connected device:

Reset page:

Why blocking the ssid's names? Even if I was your neighbor and being able to view them, I'd still need their passwords to hop on the local networks 😉

Why blocking the ssid's names? Even if I was your neighbor and being able to view them, I'd still need their passwords to hop on the local networks 😉

Haha, totally agree. But I saw Simon's comment here: https://github.com/simonprickett/phewap/issues/13#issuecomment-2176993622
And didn't feel like stepping on any toes tonight 😉


How can i download multiple files in one progress bar with download status

i want to download like when we download any game then supported files are being downloads with one progress bar and with total file counts alongwith current downloaded file status as same as QUEUED DOWNLOADING, so can i able to do this with this great library?
Hope this image clear my question:

The library does not do it currently. Currently, this should be managed by the client side. I will consider adding it in the library itself.

thank you for respond, i will be waiting for this update 👍

@amitshekhariitbhu  Still queuing and downloading one by one is not ready?

@sarabellaa You can queue the next download at onDownloadComplete()


Add page about Synchronization Framework a.k.a Buteo

Yes, it's quite terse, I know. Think of it more like a placeholder than complete documentation for now.


Latest Rocket Version v<IP_ADDRESS> is not loading Plugins.

Plugins of the server is not loaded and it wasn't display on the console or log. Players complain that they can't use any command due for those plugins.

Your plugins probably broke, Rocket 4 has changed drastically. https://rocket.foundation/viewtopic.php?f=44&t=272&p=866#p866

All of my plugin broke?

Indeed, the plugin all broke.

Thank you for reading my answer.

Why is the Alert:Server is in white colour, which is different from its usual green?

I saw the new update. Phew* its so much easier to use /say or "say" in console. No longer have to type /say Hi/0/240/0


Stuck on Authenticating (<IP_ADDRESS>25)

Can't get past Authenticating.

Same with 4196 and even 4284

Here's the installer if you need it.
https://drive.google.com/file/d/1i85datsV5F9GT4tqnE34BSszDJIunXkA/view

I've had a quick look and it appears to be a problem with the application packer I'm using failing to load the plugins.
I'll take a proper look at this tonight.

Can you try this exe and let me know if it works please? (Just copy and paste over the top of the other one).

https://www.dropbox.com/s/0l1keftx13atrrv/AIO Sandbox.zip?dl=0

Yes that one works!

Awesome! Any other problems let me know.


security: information disclosure to unauthenticated guest

Recent openwrt builds show the administration menu to unauthenticated guests: an attacker would be able to know the presence of installed packages and services on the box.
version banner: Powered by LuCI Master (git-20.078.22902-0ed0d42) / OpenWrt SNAPSHOT r12643-213250b56b

It is trivial to probe installed packages by checking http://routerip/luci-static/resources/view/ or by checking the strings contained in the translation feed, therefor there is no security benefit in hiding the menu tree.

It is trivial to probe installed packages by checking http://routerip/luci-static/resources/view/ or by checking the strings contained in the translation feed

Doesn't seem that way, i just double-checked with Adblock plugin installed:

therefor there is no security benefit in hiding the menu tree.

We are not discussing security through obscurity here: hidden or not the menu tree should not disclose this information to unauthenticated users.

I cannot ship new openwrt + LuCI builds until this issue gets addressed properly, i kindly ask you to reconsider and reopen this ticket.

I cannot ship new openwrt + LuCI builds until this issue gets addressed properly

You can easily change it in your own builds "for shipping".
Just revert 0130e2b08 in your local repo.

Thank you for pointing the faulty commit, i'm going to strip that patch from my builds until this gets addresses, though since it is such a small change it seems trivial to revert it on the master branch.

Note that it is related to translation, as discussed in #3563
With normal untranslated English you should have not trouble with that reverted.

It is bad enough that the issue was already reported 2 months ago and hasn't been addressed yet but

eventually the entirety of LuCI will be moved to the client side and then this knowledge can be easily obtained by checking for specific files in /luci-static/ even when not authenticated.

is even more worrying.

If you need to hide static resources from the server, consider switching to HTTP basic authentication. Hiding (as in not rendering) the menu tree for unauthenticated users is security by obscurity at its best. Also Adblock will be easily identifiable once https://forum.openwrt.org/t/adblock-4-pre-releases/57101 lands, even if menu rendering is disabled.

So this is, at the very least, the third issue pointing out the security implications regarding that commit. You have to acknowledge this fact.
I also don't buy the whole "Even if the menu is hidden you can still obtain that information easily, it provides zero security benefit" argument. This is not true at all for any product taking security seriously. I thought openwrt was one of those products, but maybe i was wrong.

You failed to point out the actual security implications. Which are are the security implications of knowing which packages are installed?

You failed to point out the actual security implications. What are are the security implications of knowing which packages are installed?

https://cwe.mitre.org/data/definitions/200.html

CWE-200: Exposure of Sensitive Information to an Unauthorized Actor

There are many different kinds of mistakes that introduce information exposures. The severity of the error can range widely, depending on the context in which the product operates, the type of sensitive information that is revealed, and the benefits it may provide to an attacker. Some kinds of sensitive information include:

private, personal information, such as personal messages, financial data, health records, geographic location, or contact details
system status and environment, such as the operating system and installed packages
business secrets and intellectual property
network status and configuration
the product's own code or internal state
metadata, e.g. logging of connections or message headers
indirect information, such as a discrepancy between two internal operations that can be observed by an outsider

Common Consequences

The table below specifies different individual consequences associated with the weakness. The Scope identifies the application security area that is violated, while the Impact describes the negative technical impact that arises if an adversary succeeds in exploiting this weakness. The Likelihood provides information about how likely the specific consequence is expected to be seen relative to the other consequences in the list. For example, there may be high likelihood that a weakness will be exploited to achieve a certain impact, but a low likelihood that it will be exploited to achieve a different impact.

Scope
Impact
Likelihood

Confidentiality
Technical Impact: Read Application Data

https://www.cvedetails.com/vulnerability-list/cweid-200/vulnerabilities.html for a list of CVEs assigned (spoiler alert: there are a lot)

If your thread profile requires you to hide that information, you need to switch HTTP basic authentication to prevent any access to static assets. You can also revert that commit if it increases your perceived security.
Note that any package installing static assets (CSS files, icons, JavaScript resources) will be easily identifiable, regardless of whether the menu is rendered or not. Further information can be obtained by checking the cache buster strings which reveal the version of LuCI running.
Further techniques are fingerprinting the translation feed or even the markup or CSS files themselves to deduce information.

If your thread profile requires you to hide that information, you need to switch HTTP basic authentication to prevent any access to static assets. You can also revert that commit if it increases your perceived security.

This hasn't been needed until now and is a clear POLA violation. This should be documented https://openwrt.org/docs/guide-user/luci/luci.secure.

Note that any package installing static assets (CSS files, icons, JavaScript resources) will be easily identifiable, regardless of whether the menu is rendered or not. Further information can be obtained by checking the cache buster strings which reveal the version of LuCI running.

If this is true (i did not find any traces of "adblock" in "/luci-static/") it should be documented https://openwrt.org/docs/guide-user/luci/luci.secure

Further techniques are fingerprinting the translation feed or even the markup or CSS files themselves to deduce information.

This is all true and things should be clearly improved to harden the system against fingerprinting but doesn't change the fact that commit introduced a security issue which was not present before. I kindly ask you to revert that commit.

I am not going to revert that commit.

I am going to ask MITRE for a CVE.

Feel free to.

I commented all other duplicated bugs. Yes this is bug.
It is always better to have closed/unlocked door instead opened/unlocked.
I hope you understand what i mean. There is nothing wrong to revert it and admit when something
new is more bad than the old one. Sometimes upgrades are not good.

A CVE with a "medium" severity score has been assigned by MITRE:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=2020-10871
https://nvd.nist.gov/vuln/detail/CVE-2020-10871

Good point. Bugs should be fixed. And some bugs are really UGLY like that commit.

I worked at a system where attackers scanned for thousands of different vulnerabilities, because the underlying platform was not recognizable/divulged.  This took them days of time, and we were able to identify and block it. (Or not, but hopefully the other security provisions still functioned).  Vulnerabilities can exist and do happen.  Obscurity is an additional veil that can help.  It doesn't decrease security, itself.  It's only a weak-minded fool who confuses his camouflage, going into a gun-fight thinking he's wearing a bullet-proof vest.  It's also a fool who goes into a gunfight with a vest with a target on it.
I have a list of open, but secured, OpenWRT networks.  Some people were admins of them, and one admin was discussing a new package he was using in an online forum.  I spent time driving around, and was able to locate the hotspots he maintained.
...Or... I'm a greater power, with a popular app which examines local open hotspots, reporting the same back to me, and again build a database identifying which networks are using which software, and sometimes it also reveals version differences.
...Or... I'm an IoT device dealer, able to build the database, and recognize potential targets, from within their own networks.  They didn't have to be open.

I don't want to reveal anything unique or identifying about anyone. The less we share, in any way, the better.
Were it not useful for troublesome situations, and helpful to a network's admin/users, it'd be best to disguise the router software entirely.  If someone hits a router and can't even identify it as OpenWRT, let alone using luci, or it if presented even another platform, one could mislead attackers -- that would be a benefit.
Make no mistake. The phrase "Security through obscurity is no security at all" is a misquoted and misleading catchphrase that gets into peoples' minds like a virus.  Obscurity is another level of protection used across nature, military, etc.  Were it a bad idea, nobody would ever use camouflage.  The camouflaged tank is safer.  The delicate router with the package with the Zero-day exploit, that is announcing it has that package, is Eve's easy target.
And remember, it's not just about the hardness of the security, but the divulging of unique characteristics.  Bob, presenting his uniqueness, is more likely for Eve to recognize him amongst the crowd.  You never know the creative and destructive ways information will be exploited.


rails vs rake command inside the documentation page

First time on Rails framework.
Reading the documentation here: https://github.com/plataformatec/devise, in the paragraph "Getting started", after the command "$ rails generate devise MODEL" there is the step "rails db:migrate". I have experimented that the command is not "rails db:migrate", but it is "rake db:migrate" (I am using rails  4.2.1).
Replace "rails" with "rake".

Just so you know, since Rails 5 you can use rails instead of rake (there used to be some commands using rake and some other using rails, it is now unified).
Since Rails 5 is pretty new, it's probably a good idea to add a note about rake/rails.
Just a question: why using Rails 4.2 if you are starting with Rails?

I am using ruby 4.2 because I am following a course on that and because I have installed tokaido app which has 4.2. It is only for starting to play with rails. Sooner I will pass to version 5.
I think we can close the issue. Thanks.


Added Erase option

It doesn't seem like an erazer option to remove certain parts of the writing, it clears the entire board
Anyway you can raise a new issue to clear the entire board & rename the button to clear @abhijeetanand29

Committed the required changes


how to have custom component in react-formio??

React-formio uses formio.js as the renderer and form builder. You can use the exact same code to build react-formio components as you can for formio.js. Just create a class that extends BaseComponent and then add the component with Formio.Components.addComponent('checkmatrix', CheckMatrixComponent);
See http://formio.github.io/formio.js/app/examples/customcomponent.html for an example.

React-formio uses formio.js as the renderer and form builder. You can use the exact same code to build react-formio components as you can for formio.js. Just create a class that extends BaseComponent and then add the component with Formio.Components.addComponent('checkmatrix', CheckMatrixComponent);
See http://formio.github.io/formio.js/app/examples/customcomponent.html for an example.

hi.. i got it now, its working, thank you.

Am getting the error
CheckMatrixComponent.prototype = Object.create(InputComponent.prototype);
TypeError: Cannot read property 'prototype' of undefined
I want to create  custom component like email ...

@vishaldenzil will you please open a new issue for this item?
This issue is almost a year old.
Thanks,


Build darwin

Hello @amoh-godwin! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file pyffmpeg/static/bin/darwin/darwin.py:

Line 1:9: E225 missing whitespace around operator
Line 1:22934181: W292 no newline at end of file


chore: bdd-nh-1587645361 to 0.0.1

chore: Promote bdd-nh-1587645361 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Show app version & build information in our apps

After POC done in issue #68,
Using https://www.npmjs.com/package/@hotwax/app-version-info package, show app version on Settings page in our apps.

This is already done, closing