ERROR: Recipe not found: 'spdlog/1.5.0'

I have switched to a fresh install of Ubuntu 18.04 LTS and getting the error:
ERROR: Recipe not found: 'spdlog/1.5.0'

Conan is working as it downloaded other libraries but for some reason it can't find spdlog.  I verified that the conan website has 1.5.0 as the latest version.
Any ideas what might be the problem?
Here is the complete error:
/snap/clion/103/bin/cmake/linux/bin/cmake -DCMAKE_BUILD_TYPE=Debug -G "CodeBlocks - Unix Makefiles" /home/jeff/projects/cpp_weekly_game_project
ccache not found cannot use
-- Conan: checking conan executable
-- Conan: Found program /home/jeff/.local/bin/conan
-- Conan: Version found Conan version 1.23.0

-- Conan: Adding bincrafters remote repository (https://api.bintray.com/conan/bincrafters/public-conan)
-- Conan: Automatic detection of conan settings from cmake
-- Conan: Settings= -s;build_type=Debug;-s;compiler=gcc;-s;compiler.version=7;-s;compiler.libcxx=libstdc++11
-- Conan: checking conan executable
-- Conan: Found program /home/jeff/.local/bin/conan
-- Conan: Version found Conan version 1.23.0

-- Conan executing: /home/jeff/.local/bin/conan install . -s build_type=Debug -s compiler=gcc -s compiler.version=7 -s compiler.libcxx=libstdc++11 -g=cmake --build=missing
Configuration:
[settings]
arch=x86_64
arch_build=x86_64
build_type=Debug
compiler=gcc
compiler.libcxx=libstdc++11
compiler.version=7
os=Linux
os_build=Linux
[options]
[build_requires]
[env]

fmt/6.1.2: Not found in local cache, looking in remotes...
fmt/6.1.2: Trying with 'conan-center'...
Downloading conanmanifest.txt
Downloading conanfile.py
Downloading conan_export.tgz
fmt/6.1.2: Downloaded recipe revision 0
ERROR: Recipe not found: 'spdlog/1.5.0'
CMake Error at cmake-build-debug/conan.cmake:402 (message):
  Conan install failed='1'
Call Stack (most recent call first):
  cmake-build-debug/conan.cmake:497 (conan_cmake_install)
  cmake/Conan.cmake:16 (conan_cmake_run)
  CMakeLists.txt:57 (run_conan)

-- Configuring incomplete, errors occurred!
See also "/home/jeff/projects/cpp_weekly_game_project/cmake-build-debug/CMakeFiles/CMakeOutput.log".

[Finished]

Well that is embarrassing... clearing the conan cache seems to have fixed this issue.
conan remove "*" -f


taking digits as variable names and auto type conversions

Hello,
I have one question, if the following behaviour is intended behavior.
Let's assume we have the following python keyword library:
import logging
logger = logging.getLogger()

def validate_first_value(argument):
    result = ""
    for item in argument:
        result += "type({}): {}  ".format(str(item), str(type(item)))

    logger.warn(result)

This library is used by the following robot file:
*** Settings ***
Library    TestLibrary

*** Test cases ***
Check the parameter translation

    ${1}   Set Variable    1

    Log To Console   \n
    Validate first value     argument=@{${4}, ${5}}
    Validate first value     argument=@{${1}, ${2}}
    Validate first value     argument=@{${2}, ${1}}

Running this, we get the following output (starting from robotframewordk 3.1.2 and up to robotframework in version 6.0)
|| ==============================================================================
|| Test
|| ==============================================================================
|| Check the parameter translation
||
[ WARN ] type|4| <class 'int'>  type(5): <class 'int'>
[ WARN ] type|1| <class 'str'>  type(2): <class 'int'>
[ WARN ] type|2| <class 'int'>  type(1): <class 'int'>
|| | PASS |
|| ------------------------------------------------------------------------------
|| Test                                                                  | PASS |
|| 1 test, 1 passed, 0 failed
|| ==============================================================================
|| Output:  /mnt/etfiles/users/nuecker/robot_Test/output.xml
|| Log:     /mnt/etfiles/users/nuecker/robot_Test/log.html
|| Report:  /mnt/etfiles/users/nuecker/robot_Test/report.html

There are several things, which I don't understand.
Why doesn't robot complain about assigning a value to a kind of integer value?
I would have expected, that ${1}  Set Variable   1  would produce an error.
But robot is so kind and creates the variable ${1} - is that really intended behaviour?
If I pass now this list construction to the Keyword, as long as the variable ${1} is in first position, its type (here string) persists:
With @{${1}, ${2}} the first item of the list is a string, the second an integer.
If we exchange the elements, like shown, by``@{${2}, ${1}}`, both elements become integer.
Is here some auto type conversion taking place and why is that?
As stated above, I tried this execution beginning from robotframework==3.1.2 onwards up to robotframework==6.0.
Thank You very much for any information about this,
Best Regards,
Thomas

First of all, allowing users to overwrite ${1} doesn't make much sense. I believe the reason is that when number variables were introduced, we wanted to be sure that they don't break existing tests possibly using variables like ${1}. That was a bad decision and we should change the behavior.
The reason for the strange behavior with @{${4}, ${5}}, and especially with @{${1}, ${2}} when ${1} has been redefined to contain string 1, is pretty interesting. This is how this syntax is evaluated:

Internal variables are replaced. The aforementioned examples become @{4, 5} and @{1, 2}.
Robot tries to find a variable with exactly these names. No such variables exist.
Robot checks is so called "extended variable syntax" in use. If you aren't familiar with this syntax, check the User Guide for details.
The first step of evaluating the extended variable syntax is is finding a potential variable name from the beginning. Names are expected to be alpha-numerical. In our examples these potential names are 4 and 1.
Robot now checks are there variables with these names available. Both ${4} and ${1} exist. The first contains integer 4 and but the latter contains string 1.
The resulting variable value is then evaluated with the remaining part of the original variable name. This means evaluating 4, 5 and '1', 2.
Both expressions are valid and create a tuple. Notice that the latter has string as the first value.

Notice that you get the same effect also by using @{4, 5} and @{1, 2} directly. These variables creating a tuples due to the extended variable syntax is pretty strange and that hadn't occurred to be earlier. I wouldn't call it a bug, though. Also redefined ${1} works logically in this context, but being able to redefine it, as I already commented, very questionable.
`@{This is rather strange behavior, b

This behavior is strange but there's no bug. Closing.


Feature request: add PATCH method

First of all, nice project!
It would be great to be able to use the HTTP method PATCH for partial updates.

Yeah you are right, I just added it.
I appreciate the feedback, this is very early work and I expect there be more bugs and missing features. Don't hesitate to open another ticket if you spot something.
ps: congrats on opening ticket #1 🥇


Fix Bug in Eve Exception Handling

Description
In some cases when a TemplateRenderingError should be raised, instead a key error pops up due to a bug in the exception handling.
Requirements
Before submitting this PR, please make sure:

[x] You have run the code checks, tests and documentation build successfully
[x] All fixes and all new functionality are tested and documentation is up to date
[x] You looked at the review checklist

Additionally, if this PR contains code authored by new contributors:

[x] All the authors are covered by a valid contributor assignment agreement,
signed by the employer if needed, provided to ETH Zurich
[x] The names of all the new contributors have been added to an updated
version of the AUTHORS.rst file included in the PR

bors try


Access To Slack Client Outside Of Plugins

Your Question
Is there a way to access the raw slack.Client outside of a plugin?
Is your question request related to a problem?
n/a
Additional context
I'm trying to use the base bot to send a DM to a user when an interaction is received via a non-slackscot path.

For the moment I'm just creating a new client with viper.GetString("token")

It's not technically impossible but I think it would break the bot abstraction so I'd be inclined to not offer this. For what it's worth, I think slack applications often do have a bot component and "something else" and that it's okay to share the token for those different components.
Does that make sense?

Yup yup.
Thanks


Restore the juggling of webids to that Group ACLs work again

The way groups are stored has to be a compromise between the way to naturally one store them in an AddressBook's vcard:Group (using an internal URI in the local vcard) and the needs of the ACL system, where the public webId of the person must be used directly in the group shape, as that is the only place it looks.
This means that when a we have bother the local card ID for the person and their WebId, we must store it like this.
 <#thisGroup>  vcard:member <theWebId> .
 <theWebId> owl:sameAs <../Person/83924759/index.ttl#this> .

or
 <#thisGroup>  vcard:member <theWebId> .
 <../Person/83924759/index.ttl#this>  owl:sameAs <theWebId> .

This means the ACL system works without modification, but the contacts management has to be smarter.
This functionality existed recently (as group ACLs worked) but has broken in the splitting out of the logic into a separate file.
Note owl:sameAs is self-inverse, and so it is unreasonable to require it to be one way around or the other way round, they mean the same thing.

Can it be simplified ?. To just add the sameAs triple so has to have :
<#thisGroup>  vcard:hasMember <../Person/83924759/index.ttl#this> .
 <../Person/83924759/index.ttl#this>  owl:sameAs <theWebId> .

On NSS this does allow the contact Group to be used as an acl Group (tried locally).

This seem to solve the issue, but with a strange n:this tabont:uri c:me.
Delete wooks also.
export async function addWebIDToContacts (person, webid, context) {
  if (!webid.startsWith('https:')) { /// @@ well we will have other protcols like DID
    throw new Error('Does not look like a webid, must start with https:')
  }
  console.log(`Adding to ${person} a ${WEBID_NOUN}: ${webid}.`)
  const kb = context.kb
  const vcardURLThing = kb.bnode()
  // alain add webID to Groups
  const groups = kb.each(null, ns.vcard('hasMember'), person)
  let groupWebids = []
  for (const i in groups) groupWebids = groupWebids.concat($rdf.st(kb.sym(webid), ns.owl('sameAs'), person, kb.sym(groups[i]).doc()))
  console.log('Alain Adding ' + groupWebids)

  const insertables = [
    $rdf.st(person, ns.vcard('url'), vcardURLThing, person.doc()),
    $rdf.st(vcardURLThing, ns.rdf('type'), ns.vcard('WebID'), person.doc()),
    $rdf.st(vcardURLThing, ns.vcard('value'), webid, person.doc()),
  ]
  await kb.updater.update([], insertables)
  await kb.updater.update([], [...groupWebids])
}

@prefix : <#>.
@prefix tabont: <http://www.w3.org/2007/ont/link#>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.
@prefix ind: <../index.ttl#>.
@prefix in: <../Person/46c651f3-f091-4298-b033-2eb5c233d6e8/index.ttl#>.
@prefix inde: <../Person/17bc23c3-32ff-4cf7-ab32-21653c67927f/index.ttl#>.
@prefix c: <https://bourgeoa.bourgeoa.ga:8560/profile/card#>.

:this a vcard:Group; vcard:fn "Group"; vcard:hasMember inde:this, in:this.

ind:this vcard:includesGroup :this.

inde:this vcard:fn "bourgeoa-solidcommunity.net".

in:this vcard:fn "bourgeoa-8560"; tabont:uri c:me.

c:me owl:sameAs in:this.

As can be seen below owl:sameAs is not added multiple times, it should be inde:this owl:sameAs c1:me, c0:me
The issue dates back 2017 https://github.com/linkeddata/rdflib.js/issues/185.
@prefix : <#>.
@prefix tabont: <http://www.w3.org/2007/ont/link#>.
@prefix owl: <http://www.w3.org/2002/07/owl#>.
@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.
@prefix ind: <../index.ttl#>.
@prefix in: <../Person/46c651f3-f091-4298-b033-2eb5c233d6e8/index.ttl#>.
@prefix inde: <../Person/17bc23c3-32ff-4cf7-ab32-21653c67927f/index.ttl#>.
@prefix c: <https://bourgeoa.bourgeoa.ga:8560/profile/card#>.
@prefix c0: <https://bourgeoa.solidcommunity.net/profile/card#>.
@prefix c1: <https://bourgeoa.solidcommunity.net:8443/profile/card#>.

:this a vcard:Group; vcard:fn "Group"; vcard:hasMember inde:this, in:this.

ind:this vcard:includesGroup :this.

inde:this
    owl:sameAs c0:me;
    vcard:fn "bourgeoa-solidcommunity.net";
    tabont:uri c1:me, c0:me.
in:this owl:sameAs c:me; vcard:fn "bourgeoa-8560"; tabont:uri c:me.

@timbl
A person can have many webIDs.
The question of 2 contacts sharing a same webID is depending on the meaning of Person.

Can for example a man and a wife share a same webId : yes for family account (so that each one is allowed to delete the pod), they can each also have other webIDs relating to their own activities. Is it advisable I suppose not, but makes life easier.
contacts may also be seen as a sub-group

If we refuse that we must check that a webID is only used once in all contacts and sameAs can be used

if a webId can appear in multiple person cards sameAs cannot be used.

webID's can be added to person's groups vcard:hasMember and displaying group members need to filter vcard:hasMember to check that the item is a person of that group and not a webId.
removing a webID from a person's groups vcard:hasMember need to check that no other person in that group uses that webID.

The tabont: thing looks like then result of smush processing .. historically the mashlib, in its role of making mashups of data form multiple sources would replaces all occurrences of multiple URIs for the same thing with just one of them ... and then IIRC use something like tabont:ui to track the orignal ones so they were not completely lost.  We need to make sure those features are disabled.     Its the replaceWith function in rdflib Store .

The tabont:uri  is because we have not fixed  https://github.com/linkeddata/rdflib.js/issues/458... not wise to play with sameAs at all until that is fixed, or the sameAs will be processed internally by the store, leading to a tabont:uri
(I think solid-ui used to originally set the features of the store to [] but I bey that has been lost in the move to solid-logic just guessing.)

As regards simplification, the version which has two  'member' arcs leads to confusion as to how many members in the group

PR #43 uses owl:sameAs for webIDs and vcard:hasMember contains only cards


text fields not showing typed characters

this is a fresh installation of atom (v 1.25.1 x64) and all my text fields not showing the values . I made a snap shot of these fields and all of those has value but they are invisible.

Thank you for contributing!
I cannot reproduce this using Atom v1.25.1 on Mac OS X 10.13.4. Have you tried reproducing this in Safe Mode?
We require the issue template to be filled out on all new issues and pull requests. We do this so that we can be certain we have all the information we need to address your submission efficiently. This allows the maintainers to spend more time fixing bugs, implementing enhancements, and reviewing and merging pull requests. Please open a new issue and fill out the template for us.
Thanks for understanding and meeting us half way :grinning:


Can't restore backup

Hello,
I'm  trying to restore my db but I always get: {   "error" : {     "root_cause" : [       {         "type" : "security_exception",         "reason" : "no permissions for cluster:admin/snapshot/restore"       }     ],     "type" : "security_exception",     "reason" : "no permissions for cluster:admin/snapshot/restore"   },   "status" : 403 }
So I searched in the doc and find this https://github.com/floragunncom/search-guard-docs/blob/master/snapshots.md.
Even my creating a new roles in sg_roles.yml and applied it, it doesn't change anything.
On the server side: ```2017-5-31 17:22:18[2017-05-31T15:22:18,904][WARN ][c.f.s.c.PrivilegesEvaluator] cluster:admin/snapshot/restore is not allowed for a regular user
I think I'm missing a point there...

search guard version 5.2.2

See https://github.com/floragunncom/search-guard-docs/blob/master/snapshots.md

Please do not ask questions here.
For that refer to https://groups.google.com/forum/#!forum/search-guard
Github is a place only for reporting bugs or feature requests.
If you report a bug please include always the following informations:

Search Guard and Elasticsearch version
JVM version and operating system version
Number of nodes in your cluster
Description of the bug

These informations are optional but are very valueable and
typically would lead to get bugs fixed faster:

Steps to reproduce
Logfiles on DEBUG level
A failing unittest


Unexpected problems on windows due to multiprocessing

Pycro-manager acquisitions use multiple threads in order to asynchronously execute different parts of the acquisition cycle. These correspond to different threads on the Java side as well. Specifically, sending acquisition events, running acquisition hooks, and running image processors should each occur separately, such that one does not block another, and none interferes with the main thread. Right now, this is achieved using python's multiprocessing module, so that each of theses actions occurs in its own dedicated process. However, multiprocessing can behave in non-intuitive ways on windows, leading to unexpected issues (https://github.com/micro-manager/pycro-manager/issues/9, https://github.com/micro-manager/pycro-manager/issues/42).
One alternative to this behavior might be to use python's threading module instead. For acquisition events it would be pretty easy to swap in multiple threads instead of multiple processes, and I doubt there would much (if any) performance hit, but image processors and acquisition hooks run by the same mechanism, and if using both at the same time global interpreter lock blocking could become a problem. Ideally, there could be a change that would cover all three cases, but I've yet to figure out what that could be. It might make sense in the mean time to switch all three cases to using threads to ensure that simple use cases work as expected, and allow swapping in of processes for more performant use cases.

multiprocessing.dummy provides the same API than multiprocessing but using threads instead of processes. This can be useful if you want to support both. Is the global interpreter lock really a problem here?

multiprocessing.dummy is just a wrapper around threading, so as you mention it would be trivial to support both. I'm just wondering if there is a way to get the best of both worlds--fully asynchronous image processors, acquisitions hooks, and acquisition events, without having to expose the user to the annoying complexities of multiprocessing. In most cases GIL wouldn't be a problem, but if trying to run on two different threads at the same time with functions that fail to release GIL, there could be a major performance hit

closing for now since all issues seem to be resolved. Might reopen/reconsider later


Fix intersect typo

Ah yes, copy/paste accident :+1:

@homu r+

:pushpin: Commit c59e630 has been approved by poteto

:zap: Test exempted - status


Typo in Boarding Records

On the 'boardings' screen (search results for bboarding records) - The 'Bordered by' column should be 'Boarded by'.

duplicate of #57


menu_select not consistent, raising TimeoutError

I used to access the menu by simply using the menu_select function
facWinMain.menu_select('Facturaciones->Gestión de facturaciones')
But once in a while it raised timeoutError so I worked around it by using a try except loop (I know it's a bodge)
i=0
    while True:
        try:
            facWinMain.menu_select('Facturaciones->Carga de facturaciones')
            break
        except timings.TimeoutError:
            i += 1
            if i > 5:
                raise timings.TimeoutError

But then when I moved the project to a les powerful machine (which I access via RDP in oder to be able to keep doing things on my main machine while the program is running) it takes a long time to locate the menu (if it does manage to do it).
Clicking the window seems to make it find the menu faster, could it be a focus problem? SetFocus and focus are not working as facWinMain is a window specification.
facWinMain is using uia backend and I'm running pywinauto 0.6.1 under python 3.6 x64.

Is facWinMain already opened at the moment you're trying menu_select(...)?
You said facWinMain is a window specification. It means pywinauto does the search for that window to create wrapper before calling menu_select(). In other words these 2 statements do the same:
facWinMain.wrapper_object().menu_select('Facturaciones->Carga de facturaciones')
facWinMain.menu_select('Facturaciones->Carga de facturaciones')

If window opening takes longer than the default timeout, you need to wait explicitly:
facWinMain_wrapper = facWinMain.wait('ready', timeout=10)
facWinMain_wrapper.menu_select('Facturaciones->Carga de facturaciones')

As I remember TimeoutError is not raised inside menu_select(...). That's why I guess window opening takes too long.

Hi @vasily-v-ryabov yes, facWinMain is opened when i try to menu_select()
That's what It's bugging me. If the window wasn't visible yet I could understand it raising exceptions, but it is.

Hmm... What is the declaration of facWinMain?
Did you try to call .wrapper_object() first and then to menu_select(...) for returned wrapper?  Please re-check.

I haven't tryed to call  .wrapper_object()
But I mean, there is not much to the declaration, maybe I'm doing something wrong?
app = Application(backend="uia").start(r'C:\Factel5\Factel5.exe')
facWinMain = app["FacTel5"]

If you use backend='uia' bitness doesn't matter (I believe pywinauto shouldn't warn you in this case - interesting!). Will try to play with your app a bit later.

TimeoutError was not reproduced on my side yet though I've posted an answer for your question on SO.
Probably your scenario runs after filling many data fields in. So main_window.wait('ready', timeout=10) may help.

Unfortunately I'll not be working with the project that uses pywinauto for quite some time.
I'm going to close the Issue, if I encounter a similar problem down the road I'll just make a new one.
Regards.


ValueError: Camera_position must have shape [batch_size, 3]

When run "python demo.py  --pretrain_weights ./pretrained_model/FaceReconModel.pb --use_pb 1", the following error happened:
Traceback (most recent call last):
File "demo.py", line 123, in
demo()
File "demo.py", line 81, in demo
FaceReconstructor.Reconstruction_Block(coeff,opt)
File "/workspace/dl/Deep3DFaceReconstruction/face_decoder.py", line 63, in Reconstruction_Block
render_imgs,img_mask,img_mask_crop = self.Render_block(face_shape_t,norm_r,face_color,camera_scale,f_scale,self.facemodel,opt.batch_size,opt.is_train)
File "/workspace/dl/Deep3DFaceReconstruction/face_decoder.py", line 311, in Render_block
ambient_color = ambient_color)
File "/workspace/dl/Deep3DFaceReconstruction/renderer/mesh_renderer.py", line 301, in mesh_renderer
raise ValueError('Camera_position must have shape [batch_size, 3]')
ValueError: Camera_position must have shape [batch_size, 3]

This error is related to the tf mesh renderer. Did you use the pre-compiled rasterize_triangles_kernel.so in this repository?

This error is related to the tf mesh renderer. Did you use the pre-compiled rasterize_triangles_kernel.so in this repository?

I have the same problem with you. And I fix it by changing "tf.shape(coeff)[0]" to "coeff.shape[0]" in 88 line in face_decoder.py


Remove unfinished preheat codes

What this PR does / why we need it
Preheat work of Manta is still under developing, let's bury the porting first.
Which issue(s) this PR fixes

Fixes #
Special notes for your reviewer
Does this PR introduce a user-facing change?

None

/kind cleanup
/lgtm
/approve

/kind cleanup
/lgtm


fix: Terraform validate - only run tf init if providers directory is missing in .terraform

Put an x into the box if that apply:

[ ] This PR introduces breaking change.
[x] This PR fixes a bug.
[ ] This PR adds new functionality.
[ ] This PR enhances existing functionality.

Description of your changes

If a terraform states does not include modules, a .terraform/modules directory is not present. For these cases, the tf init is run every time the validate hook runs, which takes extra time + causes issues if e.g. a remote state is used which causes the init to fail.
How can we test changes

I checked it with my repositories as described above, and the tf init did now only run if the .terraform/providers directly is not present.

@MaxymVlasov Can you think of any reason to check both dirs instead of only .terraform/providers/?

If a terraform states does not include modules

If a terraform state does not include providers, what then?

but let's brainstorm first are there any modules that don't need providers

Output-only modules.

Maybe add something like --force-no-init or --ignore-init arg for common::terraform_init() function so that it always return success when this flag is passed by user? 🤔

Maybe add something like --force-no-init or --ignore-init arg for common::terraform_init() function so that it always returns success when this flag is passed

Hmm, or ask the user to provide a comma-separated list of what paths should be checked, ie:
- --run-tf-init-if-not-exits-any-of=.terraform/providers,.terraform/foobar

Hmm, or ask the user to provide a comma-separated list of what paths should be checked, ie:

Might be a bit of overkilling as of quite rare use case though. Those who would want to provide a list of options, most probably were much more smarter and already use mkdir to circumvent this hook's unwanted behavior 😃

@smelchior good idea, let's do it
Here are my errors when no providers and modules provided
➜ time t validate -json
{
  "format_version": "1.0",
  "valid": false,
  "error_count": 4,
  "warning_count": 0,
  "diagnostics": [
    {
      "severity": "error",
      "summary": "Module not installed",
      "detail": "This module is not yet installed. Run \"terraform init\" to install all modules required by this configuration.",
      "range": {
        "filename": "main.tf",
        "start": {
          "line": 75,
          "column": 1,
          "byte": 2450
        },
        "end": {
          "line": 75,
          "column": 23,
          "byte": 2472
        }
      },
      "snippet": {
        "context": null,
        "code": "module \"account_label\" {",
        "start_line": 75,
        "highlight_start_offset": 0,
        "highlight_end_offset": 22,
        "values": []
      }
    },
    {
      "severity": "error",
      "summary": "Module not installed",
      "detail": "This module is not yet installed. Run \"terraform init\" to install all modules required by this configuration.",
      "range": {
        "filename": "providers.tf",
        "start": {
          "line": 20,
          "column": 1,
          "byte": 388
        },
        "end": {
          "line": 20,
          "column": 21,
          "byte": 408
        }
      },
      "snippet": {
        "context": null,
        "code": "module \"email_label\" {",
        "start_line": 20,
        "highlight_start_offset": 0,
        "highlight_end_offset": 20,
        "values": []
      }
    },
    {
      "severity": "error",
      "summary": "Module not installed",
      "detail": "This module is not yet installed. Run \"terraform init\" to install all modules required by this configuration.",
      "range": {
        "filename": "providers.tf",
        "start": {
          "line": 15,
          "column": 1,
          "byte": 285
        },
        "end": {
          "line": 15,
          "column": 19,
          "byte": 303
        }
      },
      "snippet": {
        "context": null,
        "code": "module \"iam_roles\" {",
        "start_line": 15,
        "highlight_start_offset": 0,
        "highlight_end_offset": 18,
        "values": []
      }
    },
    {
      "severity": "error",
      "summary": "Module not installed",
      "detail": "This module is not yet installed. Run \"terraform init\" to install all modules required by this configuration.",
      "range": {
        "filename": "context.tf",
        "start": {
          "line": 23,
          "column": 1,
          "byte": 918
        },
        "end": {
          "line": 23,
          "column": 14,
          "byte": 931
        }
      },
      "snippet": {
        "context": null,
        "code": "module \"this\" {",
        "start_line": 23,
        "highlight_start_offset": 0,
        "highlight_end_offset": 13,
        "values": []
      }
    }
  ]
}
terraform validate -json  0.12s user 0.05s system 141% cpu 0.124 total

Because it took only 0.12s, in case of a problem, that absolutely OK to do that check
I suppose it could be done using next or little-bit changed function: https://github.com/antonbabenko/pre-commit-terraform/blob/e1d78ae91739b2881a4f2d9f6264c3fb9ce29150/hooks/terraform_validate.sh#L37
That code is mostly the same as what we need to execute then
https://github.com/antonbabenko/pre-commit-terraform/blob/e1d78ae91739b2881a4f2d9f6264c3fb9ce29150/hooks/terraform_validate.sh#L117-L139
As replace to
https://github.com/antonbabenko/pre-commit-terraform/blob/e1d78ae91739b2881a4f2d9f6264c3fb9ce29150/hooks/terraform_validate.sh#L107-L110

perfect, i will create a new PR and close this one afterwards :)

As discussed, I made the change in https://github.com/antonbabenko/pre-commit-terraform/pull/524 in a "simple" way, i think this should be sufficient to achieve what we want :-)


Markdown Reference Links are Broken

The Markdown reference style link syntax seems to not be recognised by whatever you use for crate information page (where the README is displayed).
A Markdown reference style link looks like this:
[I'm a reference-style link][link]

[link]: example.org

This issue breaks README's like mine.

I believe this is an issue in pulldown-cmark.
I'll try hoedown (rustdoc's markdown renderer), hopefully it will be better.

Thanks, I believe it does work with hoedown, since reference style links work in Rustdoc.
Maybe filing an issue an pulldown-cmark might also be appropriate? It seems like an important thing to be missing.

It also seems that pulldown-cmark doesn't support GFM tables. See the README I linked in the issue body for an example.

Perhaps related, links to images in the repo are also broken:
![Sync Chan Threaded PDF](/sync_chan_threaded_pdf.png)

An example: Docs.rs vs Github.  Maybe it's the same issue?

I believe markdown renderer is much better now.
@polyfractal image serving is a different issue, and I don't know if I can fix it but I'll try to look into it.

The renderer seems to be choking on the table in my README now.

Yes tables doesn't have any css, I'll fix it.

Thanks :)

@SShrike I added some CSS to tables (similar to tables in about page).

Looks great, just seems to be one small issue left.

Seems to be an erroneous | for some reason.


Allow the dialog context to be changed by the embedding page.  Using …

…rs from within another dialog only works if the context can be changed to the owning dialog.

In the application:
$.fn.recurring_select('set_dialog_context', '#mydialog', '#mydialog')
causes the rs dialog to show up in the right place (none of the math was modified)


Confusing short-cut for github links

Describe the bug
I think it's confusing how you have to enter namespace/repo when cloning, instead of the full clone URL. There's no indication that this is the required format, and I bet most people are just copying from this thing:

in which case this shorthand notation adds more work for them.

(I've deleted the rest of the bug report template headings because I don't think they're relevant to this issue)

I think you're right, and I'll definitely change the format of the input before distributing it in any way. I just did that to make it a little easier on myself when testing it. So I'll keep this open for now to make sure it gets fixed.


Upgrade boost to version 1.82.0 to fix CVE 2018-25032

Merge Checklist

All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)

[x] The toolchain has been rebuilt successfully (or no changes were made to it)
[x] The toolchain/worker package manifests are up-to-date
[x] Any updated packages successfully build (or no packages were changed)
[x] Packages depending on static components modified in this PR (Golang, *-static subpackages, etc.) have had their Release tag incremented.
[x] Package tests (%check section) have been verified with RUN_CHECK=y for existing SPEC files, or added to new SPEC files
[x] All package sources are available
[x] cgmanifest files are up-to-date and sorted (./cgmanifest.json, ./toolkit/scripts/toolchain/cgmanifest.json, .github/workflows/cgmanifest.json)
[x] LICENSE-MAP files are up-to-date (./SPECS/LICENSES-AND-NOTICES/data/licenses.json, ./SPECS/LICENSES-AND-NOTICES/LICENSES-MAP.md, ./SPECS/LICENSES-AND-NOTICES/LICENSE-EXCEPTIONS.PHOTON)
[x] All source files have up-to-date hashes in the *.signatures.json files
[x] sudo make go-tidy-all and sudo make go-test-coverage pass
[x] Documentation has been updated to match any changes to the build system
[x] Ready to merge

Summary

What does the PR accomplish, why was it needed?
to Fix CVE-2018-25032
Change Log

Add patch for embedded zlib

Does this affect the toolchain?

NO
Links to CVEs

https://nvd.nist.gov/vuln/detail/CVE-2018-25032

Test Methodology

Buddy Build
AMD64: 348200
ARM64: 348209

This is too big of a jump and requires major recompiles. Prefer patchng the embedded zlib

This PR has been updated to patch the CVE instead of upgrading the package.

I think all we really wanted were these two commits:
madler/zlib@eff308a madler/zlib@1eb7682
In that order. Goal was to patch just the one CVE, not conduct a full upgrade of package.

Would we not want this commit: https://github.com/madler/zlib/commit/5c44459c3b28a9bd3283aaceab7c615f8020c531? These commits seem to fix CVE-2022-37434 where we are trying to fix CVE-2018-25032 and those fixes apply to 1.2.12 where the embedded is 1.2.11.


File tree

I've resisted this for a long time, but it may be useful to have a "traditional" file/folder tree on the left-hand side. Fully optional of course.
It should support folding and collapsing of folders, and highlighting your currently open page.
This is fully implementable as a plug, and should use the showPanel("lhs", ...) API.

This would complicate how page links work.
Given this Hierarchy:
- Project A
  - Principles
  - Parser
  - Renderer
- Project B
  - Principles
  - Schedule
  - Team
- Principles

How would Project A/Parser link to each of the three Principles pages? Perhaps:

fully qualified path to link to any place in the tree, e.g. [[/Project B/Principles]]
[[Principles]] would link to page in same folder only

Alternatively, [[Principles]] could resolve to the "nearest" match, e.g. first match in this order: in same folder, first one down the tree (if deep trees are supported), first one up the tree. Fully qualified paths must be used to jump across branches.
Alternatively, you could force page names to remain unique irrespective of path. Folders are merely for organization and do not define a hierarchical page namespace.

Also it would be nice if, continuing my example above, a folder node could have its own content, much like index pages on a website.

@vassudanagunta this already works perfectly fine now, and you can use folders right now simply by putting slashes in page names (it creates the hierarchy automatically). There's a discussion on how to handle page reference links here: #116
Right now we always require "full" links, and there's just shortened to the last pieces by live preview. Try it :)

Also it would be nice if, continuing my example above, a folder node could have its own content, much like index pages on a website.

And this also works perfectly fine, just create a page named "People" and one named "People/Vas" and this is what you'll get.
Bonus hidden feature, when you're on the "People/Vas" page, go to the Page switcher and hit the spacebar, it will complete the page name to be "People/" so you can easily add another page in that folder.

Made a basic plugin for this here: https://github.com/orausch/silverbullet-filetree

@orausch just tried it out, nice start! I have been looking around for a solid file tree component, one where we could also support things like drag & drop for moving pages etc, did you custom build something here?

+1 on this, I haven't looked at the codebase yet but I might take a crack at it when I have some time.

I have been looking around for a solid file tree component, one where we could also support things like drag & drop [...]

@zefhemel  I started playing around with this idea myself, but I'm a little stuck: I don't see a way to render a preact component from a plug? showPanel just takes some html. I guess you could maybe pass along a JavaScript file as an asset and have that render a component tree? But that adds some further complications (i.e. does this require bundle a second instance of the preact library? or is there a way to use it from the main bundle?; and how do we fetch data for the component?; How do we keep things in sync between the iframe of the plug and the main UI?)
Is there already something in place that allows this? Or would this require some sort of change to the plug API? Or is it just something that isn't supported and isn't planned to be?
(I don't mean to hijack this issue... perhaps this discussion belongs elsewhere?)

I put together a tree view implementation here: https://github.com/joekrill/silverbullet-treeview
It should be production ready. I found an excellent library called SortableTree that does most of the heavy lifting and seems to have everything we're looking for her.
Some notes on the implementation:
Key bindings:
In most apps, Ctrl+b/Cmd+b seems to be the preferred keybinding for toggling some sort of sidebar navigation. That currently toggles bold in the editor, though, so I chose Ctrl-alt-b/Cmd-alt-b instead here.
Drag & Drop:
This should be relatively simple to implement, but I've held off on this for now. The built-in index plug has the functionality needed for this implemented already (via renamePageCommand and renamePrefixCommand), but it's not really usable for the purpose of this plug at the moment, for a few reasons:

renamePageCommand will only work against the current page. You can send it the new page name, but there's no way to ask it to rename a page other than the current one.
renamePrefixCommand does not have a way to programatically pass in the old and new prefixes. It will always prompt the user for the prefix. It also always prompts for confirmation (which maybe we want? but we may want to bypass this?)

I considered reimplementing (read: copy/pasting) the code into this plug, but it's quite a bit of code and relatively complex - I think it would probably be better to change the existing commands to be able to accept some optional parameters to avoid prompting the user (and to allow renaming a page other than the current page), and use that instead.
Theming + Dark Mode:
I've tried to keep the styles consistent and aligned with the existing look and feel. And I implemented dark mode, too. But that required a lot of copy/pasting of CSS variables from the main repo.
I think it would be great if we'd consider injecting the existing theme variables, fonts, and data-theme value into the iframe of the Panel component. That would allow anything using showPanel to provide a more consistent experience. Maybe these would be opt-in for callers of showPanel as to potentially avoid breaking any existing plugs. I can create an issue and even work on the implementation if there's alignment on that idea.

Very, very excited about this @joekrill ! Can't wait to test this properly.

I just added this plug to the website (will update soon) and thereby am going to consider this issue closed!


empty field_values in pdnf_clause leads to all records selected, not empty

Issue has been cloased with v3.7.1 release


Media: Round width and height of images to ints.

Context

Summary
In the media library, the value of height and width can be floats. This is invalid and can result in large height / width attributes, with lots of decimals.
Before

After

Relevant Technical Choices

To-do

User-facing changes

Testing Instructions

[ ] This is a non-user-facing change and requires no QA

This PR can be tested by following these steps:

Reviews
Does this PR have a security-related impact?

Does this PR change what data or activity we track or use?

Does this PR have a legal-related impact?

Checklist

[ ] This PR addresses an existing issue and I have linked this PR to it in ZenHub
[ ] I have tested this code to the best of my abilities
[ ] I have verified accessibility to the best of my abilities (docs)
[ ] I have verified i18n and l10n (translation, right-to-left layout) to the best of my abilities
[ ] This code is covered by automated tests (unit, integration, and/or e2e) to verify it works as intended (docs)
[ ] I have added documentation where necessary
[ ] I have added a matching Type: XYZ label to the PR

Fixes #

Is there any actual bug this addresses?
AFAIK the spec technically says dimensions should be integers, but browsers don‘t actually bother. So it shouldn‘t make a difference. If it ain‘t broke …

Rounding this value has number of benefits.

Rounded values, means less markup to render.
Width is used to get nearest sized image. The rounded version, is easier to compare and more likely to find a matching width.

It is just something that bugs me every time as well. Willing to close it, but it is a small tweak.

I also considered using sourcesets here as well..

That‘s just the displayed width, no? Not related to fetching the nearest size.
Don‘t think we need to worry about saving a few bytes by not using decimals.

That‘s just the displayed width, no? Not related to fetching the nearest size.

What isn't true.
https://github.com/google/web-stories-wp/blob/cc2fd32f90bc46b071192be43c93952c059a98de/packages/story-editor/src/components/library/panes/media/common/innerElement.js#L158
https://github.com/google/web-stories-wp/blob/cc2fd32f90bc46b071192be43c93952c059a98de/packages/story-editor/src/components/library/panes/media/common/innerElement.js#L103
https://github.com/google/web-stories-wp/blob/cc2fd32f90bc46b071192be43c93952c059a98de/packages/story-editor/src/components/library/panes/media/common/mediaElement.js#L232
https://github.com/google/web-stories-wp/blob/cc2fd32f90bc46b071192be43c93952c059a98de/packages/story-editor/src/components/library/panes/media/common/mediaElement.js#L105

Hmm then I'd be more inclined to add Math.round() within getSmallestUrlForWidth()
Then we'd pick the 150px version if the width is 150.1111 or something, which is acceptable, but don't unnecessarily round the width for display.

Closing for now as I don't think this is worth it.
Willing to discuss a change related to getSmallestUrlForWidth as mentioned above in a dedicated ticket


please add delete_item in workshop

if you fail in update_item process first time. it's should be delete , and create item again
here is my code, I'm nod good at rust, so please check my code,and add this function
thanks a lot
    #[napi]
    pub async fn delete_item(item_id: BigInt) -> Result<(), Error> {
        let client = crate::client::get_client();
        let (tx, rx) = oneshot::channel();

        client
            .ugc()
            .delete_item(PublishedFileId(item_id.get_u64().1), |result| {
                tx.send(result).unwrap();
            });

        let result = rx.await.unwrap();
        match result {
            Ok(()) => Ok(()),
            Err(e) => Err(Error::from_reason(e.to_string())),
        }
    }

You can fork this project, add your code, and then submit a PR (Pull Request).

@colining hey! I made a PR w/ your code for you since you didn't make one - I've sourced this https://github.com/ceifa/steamworks.js/pull/172


menu options stop working after terminal's color is changed

When a terminal's colour is changed, certain options in the right-click menu stop functioning.
Steps to Reproduce:

Open a terminal in VS Code.
Right-click on the terminal and change its colour.
"Rename", "Kill Terminal," and "Split Terminal" options are not working

Originally posted by @itsmevichu in #233761
Version: 1.95.3 (Universal)
Commit: f1a4fb101478ce6ec82fe9627c43efbf9e98c813
Date: 2024-11-13T14:50:04.152Z
Electron: 32.2.1
ElectronBuildId: 10427718
Chromium: 128.0.6613.186
Node.js: 20.18.0
V8: 12.8.374.38-electron.0
OS: Darwin arm64 23.1.0

all of that works for me, thus closing

I see your more specific repro steps in the PR, those work for me

This has not been released yet despite the label. Pls try in about a week


Condition is never matched and loop to deploy functions goes forever

https://github.com/forseti-security/osdfir-infrastructure/blob/fdb61675ea55028f95357d485347bc70b3348e59/deploy.sh#L161
condition is never matched because gcloud functions --project $DEVSHELL_PROJECT_ID list | grep task
will output
NAME: closetask
NAME: closetasks
NAME: gettasks

and gcloud functions --project $DEVSHELL_PROJECT_ID list | grep task | grep $TURBINIA_REGION | wc -l will always be zero
in addition to that variables set are not stored if shell is moved to a new subshell (now default for cloud shell), env variables need to be exported

fixing in https://github.com/forseti-security/osdfir-infrastructure/pull/67


Confused about emacs keybindings

This has been a really cool piece of software to try out, but I'm confused by the Emacs keybindings.
First, even though the Emacs bindings are active, I still only see the Micro keybindings described in the help menu.
I can't seem to use some common Emacs keybindings like:

Ctrl + e to go to the end of the line
Ctrl + Space to start a selection or cancel an active selection

My current configuration file looks like this:
{
  "notebook": {
      "line_numbers": true,
      "edit_mode": "emacs",
      "key_bindings": {
          "euporie.notebook.app.NotebookApp": {
              "go-to-end-of-line": ["c-e"],
              "run-selected-cells": ["c-enter"],
              "start-selection": ["c-space"],
              "cut-selection": ["c-w"]
          }
      }
  }
}

The cut-selection seems to work (and no longer closes the current file), but the other three do not work as expected. Ctrl + e still runs the selected cells and Ctrl + Space doesn't seem to do anything.

Taking some inspiration from the code (the docs should probably mention this), my configuration file now looks like:
{
  "notebook": {
      "line_numbers": true,
      "edit_mode": "emacs",
      "key_bindings": {
          "euporie.notebook.app.NotebookApp": {
              "go-to-end-of-line": ["c-e"],
              "run-selected-cells": ["s-enter"],
              "start-selection": ["c-space"],
              "cut-selection": ["c-w"]
          },
          "euporie.notebook.tabs.notebook.Notebook": {
              "run-selected-cells": []
          }
      }
  }
}

Now Ctrl+e moves to the end of the line! And switching from GNOME Terminal to Foot solved an issue with not recognizing Shift+Enter.
I also forgot to mention I am using version 2.3.2 from conda-forge.
Remaining issues include:

Ctrl+Space does not start a selection.
Help menu displays Micro key bindings even if Emacs key bindings enabled.

Hello,
I'll prefix my reply by saying that the key-bindings system is not perfect and still needs a bit of work. Also, the documentation around key-bindings is a bit lacking in some areas. Also, I'm not au fait with emacs' or vim's key-bindings myself, so I haven't really been to test that they work as expected to the extent that I'd like. But I'd like to improve these things!
I'll try and explain things a bit better here.
The first thing to know is that the editor style key-bindings (emacs/vi/micro) apply only to text input fields, so will only be active if you are editing a cell.
Second, the emacs (and vi) style editor key-bindings are inherited from the prompt_toolkit project. They do not use the same centralized command registry system that is used in the rest of euporie, which is part of why the emacs or vi style key-bindings are not shown in the menus when they are active. For this to work, I need to port the prompt_toolkit emacs and vi style bindings to use my centralized command registry, which is a large undertaking.
Third, is that key-bindings cascade up from the active control in the layout to the root of the layout. This means that if a key-binding is set for a cell input, and the same binding is set for a notebook document, then the notebook binding will take precedence.
This is the case for Ctrl-e. When the emacs bindings are active and a cell is being edited, there is an active binding on the text-input to go to the end of the current line, but also an active key-binding on the notebook document to run the current cell (also Ctrl-e).
Ctrl-space is bound to the show-command-palette command in the base application, so you'll need to add the following to your config to disable the command palette:
{
  "notebook": {
    "key_bindings": {
      "euporie.core.app.BaseApp": {
        "show-command-palette": []
      }
   }
}

This should make Ctrl-space work as expected with the emacs style editor bindings turned on.
The method of custom key-binding configuration is clearly far too complicated - I'll have a think about a better way to implement this.

Thank you for this detailed and thoughtful explanation!
Yes, it does seem that key binding configuration is fairly complex at the moment but I can also see why it currently works the way it does.
In the interim, is there a way to list the (currently active) key bindings for all of the commands helpfully listed here and at what layout level? Then at least I can try to figure out what is overriding what.

Here are all the default key-bindings in the JSON format used in the configuration file:
{
  "euporie.core.app.BaseApp": {
    "quit": "c-q",
    "close-tab": "c-w",
    "next-tab": "c-pagedown",
    "previous-tab": "c-pageup",
    "focus-next": "s-tab",
    "focus-previous": "tab",
    "clear-screen": "c-l",
    "next-completion": "c-i",
    "previous-completion": "s-tab",
    "cancel-completion": "escape",
    "accept-completion": "enter",
    "open-file": "c-o",
    "save-as": [
      "escape",
      "s"
    ],
    "show-command-palette": "c-@",
    "find": [
      "c-f",
      "f3",
      "f7"
    ],
    "find-next": "c-g",
    "find-previous": "c-p"
  },
  "euporie.core.tabs.base.Tab": {
    "save-file": "c-s",
    "reset-tab": "f5"
  },
  "euporie.notebook.app.NotebookApp": {
    "toggle-side-bar-pane": "c-b",
    "new-notebook": "c-n",
    "toggle-show-top-bar": [
      "escape",
      "m"
    ]
  },
  "euporie.notebook.tabs.notebook.Notebook": {
    "enter-cell-edit-mode": "enter",
    "exit-edit-mode": "escape",
    "run-selected-cells": [
      "c-enter",
      "c-e"
    ],
    "run-and-select-next": [
      "s-enter",
      "c-r"
    ],
    "run-cell-and-insert-below": [
      "escape",
      "enter"
    ],
    "add-cell-above": "a",
    "add-cell-below": "b",
    "delete-cells": [
      "d",
      "d"
    ],
    "undelete-cells": "z",
    "cut-cells": "x",
    "copy-cells": "c",
    "copy-outputs": [
      "escape",
      "c"
    ],
    "paste-cells": "v",
    "interrupt-kernel": [
      "i",
      "i"
    ],
    "restart-kernel": [
      "0",
      "0"
    ],
    "scroll-up": [
      "[",
      "<scroll-up>"
    ],
    "scroll-down": [
      "]",
      "<scroll-down>"
    ],
    "scroll-up-5-lines": "{",
    "scroll-down-5-lines": "}",
    "select-first-cell": [
      "home",
      "c-up"
    ],
    "select-5th-previous-cell": "pageup",
    "select-previous-cell": [
      "up",
      "k"
    ],
    "select-next-cell": [
      "down",
      "j"
    ],
    "select-5th-next-cell": "pagedown",
    "select-last-cell": [
      "end",
      "c-down"
    ],
    "select-all-cells": "c-a",
    "extend-cell-selection-to-top": "s-home",
    "extend-cell-selection-up": [
      "s-up",
      "K"
    ],
    "extend-cell-selection-down": [
      "s-down",
      "J"
    ],
    "extend-cell-selection-to-bottom": "s-end",
    "move-cells-up": [
      "escape",
      "up"
    ],
    "move-cells-down": [
      "escape",
      "down"
    ],
    "cells-to-markdown": "m",
    "cells-to-code": "y",
    "cells-to-raw": "r",
    "reformat-cells": "f",
    "reformat-notebook": "F",
    "edit-in-external-editor": "e",
    "merge-cells": "M",
    "split-cell": "c-\\",
    "edit-previous-cell": "up",
    "edit-next-cell": "down",
    "scroll-output-left": "left",
    "scroll-output-right": "right",
    "toggle-expand": "w",
    "notebook-toggle-line-numbers": "l"
  },
  "euporie.console.app.ConsoleApp": {
    "clear-input": "c-c",
    "run-input": [
      "c-enter",
      "c-e"
    ],
    "history-prev": "c-up",
    "history-next": "c-down",
    "clear-screen": "c-l",
    "end-of-file": "c-d"
  },
  "euporie.console.tabs.console.Console": {
    "cc-interrupt-kernel": "c-c",
    "show-contextual-help": "s-tab"
  },
  "euporie.preview.app.PreviewApp": {
    "quit": [
      "c-c",
      "c-q"
    ]
  },
  "euporie.core.key_binding.bindings.micro.EditMode": {
    "type-key": "<any>",
    "move-cursor-right": "right",
    "move-cursor-left": "left",
    "newline": "enter",
    "accept-line": "enter",
    "backspace": [
      "backspace",
      "c-h"
    ],
    "backward-kill-word": [
      [
        "escape",
        "backspace"
      ],
      [
        "escape",
        "c-h"
      ]
    ],
    "start-selection": [
      "s-up",
      "s-down",
      "s-right",
      "s-left",
      [
        "escape",
        "s-left"
      ],
      [
        "escape",
        "s-right"
      ],
      "c-s-left",
      "c-s-right",
      "s-home",
      "s-end",
      "c-s-home",
      "c-s-end"
    ],
    "extend-selection": [
      "s-up",
      "s-down",
      "s-right",
      "s-left",
      [
        "escape",
        "s-left"
      ],
      [
        "escape",
        "s-right"
      ],
      "c-s-left",
      "c-s-right",
      "s-home",
      "s-end",
      "c-s-home",
      "c-s-end"
    ],
    "cancel-selection": [
      "up",
      "down",
      "right",
      "left",
      [
        "escape",
        "left"
      ],
      [
        "escape",
        "right"
      ],
      "c-left",
      "c-right",
      "home",
      "end",
      "c-home",
      "c-end"
    ],
    "replace-selection": "<any>",
    "delete-selection": [
      "delete",
      "backspace",
      "c-h"
    ],
    "backward-word": [
      "c-left",
      [
        "escape",
        "b"
      ]
    ],
    "forward-word": [
      "c-right",
      [
        "escape",
        "f"
      ]
    ],
    "move-lines-up": [
      "escape",
      "up"
    ],
    "move-lines-down": [
      "escape",
      "down"
    ],
    "go-to-start-of-line": [
      "home",
      [
        "escape",
        "left"
      ],
      [
        "escape",
        "a"
      ]
    ],
    "go-to-end-of-line": [
      "end",
      [
        "escape",
        "right"
      ],
      [
        "escape",
        "e"
      ]
    ],
    "beginning-of-buffer": [
      "c-up",
      "c-home"
    ],
    "end-of-buffer": [
      "c-down",
      "c-end"
    ],
    "go-to-start-of-paragraph": [
      "escape",
      "{"
    ],
    "go-to-end-of-paragraph": [
      "escape",
      "}"
    ],
    "indent-lines": "tab",
    "unindent-line": "backspace",
    "unindent-lines": "s-tab",
    "undo": "c-z",
    "redo": "c-y",
    "copy-selection": "c-c",
    "cut-selection": [
      "c-x",
      "s-delete"
    ],
    "cut-line": "c-k",
    "duplicate-line": "c-d",
    "duplicate-selection": "c-d",
    "paste-clipboard": "c-v",
    "select-all": "c-a",
    "scroll-page-up": "pageup",
    "scroll-page-down": "pagedown",
    "delete": "delete",
    "toggle-case": "f4",
    "toggle-overwrite-mode": "insert",
    "start-macro": "c-u",
    "end-macro": "c-u",
    "run-macro": "c-j",
    "accept-suggestion": [
      "right",
      "c-f"
    ],
    "fill-sugestion": [
      "escape",
      "f"
    ],
    "toggle-comment": "c-_",
    "go-to-matching-bracket": [
      [
        "escape",
        "("
      ],
      [
        "escape",
        ")"
      ]
    ],
    "wrap-selection-\"\"": "\"",
    "wrap-selection-''": "'",
    "wrap-selection-()": [
      "(",
      ")"
    ],
    "wrap-selection-{}": [
      "{",
      "}"
    ],
    "wrap-selection-[]": [
      "[",
      "]"
    ],
    "wrap-selection-``": "`",
    "wrap-selection-**": "*",
    "wrap-selection-__": "_"
  },
  "euporie.core.widgets.pager.Pager": {
    "close-pager": [
      "escape",
      "q"
    ]
  },
  "euporie.core.widgets.inputs.KernelInput": {
    "show-contextual-help": "s-tab"
  },
  "euporie.core.widgets.display.Display": {
    "scroll-display-left": "left",
    "scroll-display-right": "right",
    "scroll-display-up": [
      "up",
      "k"
    ],
    "scroll-display-down": [
      "down",
      "j"
    ],
    "page-up-display": "pageup",
    "page-down-display": "pagedown",
    "go-to-start-of-display": "home",
    "go-to-end-of-display": "end"
  },
  "euporie.web.widgets.webview.WebViewControl": {
    "scroll-webview-left": "left",
    "scroll-webview-right": "right",
    "scroll-webview-up": [
      "up",
      "k"
    ],
    "scroll-webview-down": [
      "down",
      "j"
    ],
    "page-up-webview": "pageup",
    "page-down-webview": "pagedown",
    "go-to-start-of-webview": "home",
    "go-to-end-of-webview": "end",
    "webview-nav-prev": [
      "escape",
      "left"
    ],
    "webview-nav-next": [
      "escape",
      "right"
    ]
  }
}

This will be included in the documentation in the next release.

Thank you for this. I think we can consider this particular issue closed, but feel free to re-open if you disagree!


Anchor links for View Student Code broken in Student Profile View

Issue
tl;dr: super renders the page. Move logic after the super call to ensure page is rendered when we try to jump to the fragment heading.
For full repo of bug report see linked ticket.
I was able to reproduce the issue on Chrome but not Firefox.
The issue seems to be the page not being rendered when the fragment if condition is being run.
Fix
~The change forces the @updateSelectedCourseProgressmethod to run after other synchronous and async methods earlier in the event queue. Ensuring we can jump to a fragment that has been  rendered.~ (retracted after second commit)
CocoView.coffee's onLoaded method calls @render synchronously. This occurs when super() is called.
Thus by moving the fragment logic after the super() call. We ensure the page is rendered before jumping to the  fragment.
Testing
Manually tested on Chrome and Firefox with a test teacher.

Looks good.


Ignore values

I have an array with default values of -1 in each element - the code I have will change some of this based on events in the app. How do I only display the updated values and have SwiftChart ignore values below 0?

To update the series:

remove the old series
add the updated one
call setNeedsDisplay to refresh the chart

I should add a reload method or something...

and have SwiftChart ignore values below 0?

what do you mean for ignore? Couldn't you just pass a series without those values in it?

Basically my array (after processing) will look like:
[-1.0, -1.0, 1.5, 10.3, -1.0, -1.0]
The outcome I'm after is for on values above '0' to be drawn in the chart. What would be the best way to accomplish this? I'd prefer for the chart to simply be blank where there is a -1.0.
I hope that makes more sense :)

@9SL9 if I understand correctly, you need to "interrupt" the line. I'm not sure if it is possible with one series. I was trying splitting the series in multiple series (e.g. each one you meet a -1, just create a new series):
let data1 = [(x: 1.0, y: 0), (x: 2, y: 3.1), (x: 3, y: 2), (x: 4, y: -4.2)];
let series1 = ChartSeries(data: data1)
series1.color = ChartColors.purpleColor()

let data2 = [(x: 6.0, y: 0), (x: 7, y: 3.1), (x: 8, y: 2)];
let series2 = ChartSeries(data: data2)
series2.color = ChartColors.purpleColor()

let data3 = [(x: 10.0, y: 3.0), (x: 11.0, y: 2), (x: 12.0, y: 5)];
let series3 = ChartSeries(data: data3)
series3.color = ChartColors.purpleColor()

chart.add([series1, series2, series3])

but the result is not as expected since it expects the first series telling about all the x-values:

So if I add a series with a clear color and all the x values:
+ let series0 = ChartSeries([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
+ series0.color = UIColor.clear
// snip
- chart.add([series1, series2, series3])
+ chart.add([series0, series1, series2, series3])

it works better:

Would it work as workaround?


RTL support and Placeholder support.

Added RTL Support
Added Placeholder Support

Notes:

Maintains Backward compatibility: Yes
Tested on iOS: Yes
Tested on Android: Yes

Issues:

Fixes #69

@Rohithzr @vish2595 Thanks for contribution guys. I will release it in a couple of hours :)


preview image generation

Can it be configured to generate a preview image automatically rather than providing it one?

Not at the moment, it would be nice to have, not sure if it can be done without downloading the gif file though, And avoid loading the gif file is the point of this plugin.

try to figure it out bro. just want to eliminate additional image/thumbnail part
or
play on load will be good to go for me :)


Fix data loading bugs

Right now, we don't properly guard against different possible loading states and data not existing, so sometimes React rendering fails completely. We need to adopt a principled approach for this.

I think this is fixed now thanks to @xavcz!


Sass compilation creates duplicate selectors with inheritance

Hello,
We currently have a strange behavior with sass compilation using forge.
Here's a simplified concrete example:

In src/assets/scss/entries/50-organisms.scss

@use '~/core' as *;
...
@use '@/organisms/page/header';
...
@include header.init;

In src/views/blocks/organisms/page/header.scss

@use '@/atoms/ui/link/link' as *;
%link {
  text-decoration: underline
}
%link-test {
  @extend %link;
  height: auto;
}
@mixin init() {
  .link-test {
    @extend %link-test;
  }
}

Result after compilation in dist/assets/css/50-organisms.css

...

/* KO */
.link-test {
  height: auto;
}
...
/* OK */
.link-test {
  text-decoration: underline
}

...

It only happens when we use inheritance in sass files, otherwise compilation isn't creating other duplicate selectors.
We've disabled any post process to check but it also failed.
It was also tested with the latest versions of forge & modulus.

Hello Thomas,
As seen with you, this is the native behavior of the sass library. This is not related to forge directly and no fix can be done on our side.
Don't hesitate to come back to us if you have other questions :)
Have a nice day.


Change tags output to work with awscc provider

Suggestion how to change the module to work with awscc provider.

Hi, This is great work thank you.
As an idea have you thought about using

jsonencode({"hello"="world"})
{"hello":"world"}
to create a conversion stanza from the old tag format to the new format? That way you have a single tag section that covers both.

Hi, This is great work thank you. As an idea have you thought about using

jsonencode({"hello"="world"})
{"hello":"world"}
to create a conversion stanza from the old tag format to the new format? That way you have a single tag section that covers both.

@dawright22 Thank you for the feedback! Could you please explain your thoughts on how we could use jsonencode() for the conversion a bit more? It is however as you suggest certainly possible to allow both tag formats and still have a unified output. For example:
variable "tags" {
  default = [
    { "service" = "infra" },
    { "managed_by" : "terraform" },
    { "key" : "Name", "value" : "bastion" },
    {
      "key"   = "Name"
      "value" = "DR"
    }
  ]
}

locals {
  tags = [for item in flatten(
    [for tag in var.tags :
      [for k, v in tag : k == "key" ? tag : k == "value" ? null : { key : k, value : v }]
    ]
  ) : item if item != null]
}

output "tags" {
  value = local.tags
}

Which gives a unified output:
tags = [
  {
    "key"   = "service"
    "value" = "infra"
   },
  {
    "key"   = "managed_by"
    "value" = "terraform"
   },
  {
    key   = "Name"
    value = "bastion"
   },
  {
    key   = "Name"
    value = "DR"
  },
]

I thought about if both formats should be supported and if so how. But I wanted to keep the PR as simple as possible. However if you think this is a good idea, I will add it immediately. It would make the module more flexible and nicer to use.

@oscr support for both formats would be nice. Lets track that as a feature add based on @dawright22 suggestion. We can merge the current PR.


i18n support or ability to contribute localization

We want to use Racher for our team, but someone in our team is non-english spoken people.
Is it possible:

localize the ui for German, Russian, France ?
or
add messages for UI, to abillity for contribute with pull-request ?

if for UI using angular.js, http://angular-translate.github.io/ - this is simple way to translate angular

The UI is Ember.js but similar libraries exist.  We don't have any specific plans yet but this is definitely on our todo list.
One big complication is that some of the most interesting info, like the messages on a transitioning resource and errors, come from strings generated by the API.  So we'll have to address that somehow.

Merging with #1268..


Fix running in torch-less env with stub for torch.setheaptracking()

This commit stubs out torch.setheaptracking(), so trepl can be run in a torch-less environment. It fixes the following error:
$ th
/usr/bin/lua5.1: /usr/share/lua/5.1/trepl/init.lua:692: attempt to call field 'setheaptracking' (a nil value)
stack traceback:
    /usr/share/lua/5.1/trepl/init.lua:692: in main chunk
    [C]: in function 'require'
    /usr/lib/luarocks/rocks-5.1/trepl/scm-1/bin/th:104: in main chunk
    [C]: ?
$

Thanks!


Using system double-conversion fails on Windows

I'm trying to use the system double-conversion library on Windows. This seems to work at first, ITK builds successfully. However when I check the cmake linker libraries for ITK, it will list the dll instead of the import library:
.../lib/cmake/ITK-5.2/ITKTargets.cmake:113:  INTERFACE_LINK_LIBRARIES "Eigen3::Eigen;TBB::tbb;C:/data/user/Debug/bin/double-conversion.dll;itksys;ITKVNLInstantiation"

The part about dll is wrong and breaks the subsequent builds with an error.
I could track this problem to Modules\ThirdParty\DoubleConversion\CMakeLists.txt, to line:
  get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion LOCATION)

I'm under the impression that for MSVC, this should not use LOCATION but instead should try to get the import library. However I failed to get this to work. When I hard-code my path to double-conversion.lib, the build and subsequent builds work, but I do not know how to fix this in the correct way.

Does replacing LOCATION by IMPORTED_IMPLIB work? So it reads: get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion IMPORTED_IMPLIB)

Thanks a lot for the quick support! I've now tried three combinations:
get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion IMPORTED_IMPLIB)
get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion IMPORTED_IMPLIB_DEBUG)
get_target_property(ITKDoubleConversion_LIBRARIES double-conversion::double-conversion IMPORTED_IMPLIB_${CMAKE_BUILD_TYPE})

But none of them return a value for ITKDoubleConversion_LIBRARIES. This is very strange, because I can also see:
#> grep IMPORTED ./double-conversion/double-conversion*
./double-conversion/double-conversionTargets-debug.cmake:  IMPORTED_IMPLIB_DEBUG "${_IMPORT_PREFIX}/lib/double-conversion.lib"
./double-conversion/double-conversionTargets-debug.cmake:  IMPORTED_LOCATION_DEBUG "${_IMPORT_PREFIX}/bin/double-conversion.dll"

So both the LOCATION as well as the IMPLIB are defined in the same file and in the same manner. But one of them is empty when I check for it in Modules\ThirdParty\DoubleConversion\CMakeLists.txt. Does that make any sense?

Hmm, I'm not sure that getting the IMPORTED_IMPLIB property is generally broken in cmake. I would rather assume that this is in some way related to ITK and the cmake code in question?

You seem competent enough to debug it yourself 😄 Dump CMake variables might be of help.


[ENH] optimize pystr.upper() -> Py_UNICODE_TOUPPER(pystr)

AFAICT pystr.upper() is equivalent to Py_UNICODE_TOUPPER(pystr).  Would be nice to see that optimized automatically.

This is a deprecated function, I'd advise againts introducing it in the codebase

This is a deprecated function, I'd advise against introducing it in the codebase

Agreed. Also, the Py_UNICODE_TO*() functions only apply to a single character. We already use these functions for single Py_UCS4 character values, except for the three below:
https://docs.python.org/3/c-api/unicode.html#c.Py_UNICODE_TOUPPER
https://docs.python.org/3/c-api/unicode.html#c.Py_UNICODE_TOLOWER
https://docs.python.org/3/c-api/unicode.html#c.Py_UNICODE_TOTITLE
Recent CPython versions have implementation specific functions _PyUnicode_ToUpperFull(), _PyUnicode_ToLowerFull() and _PyUnicode_ToTitleFull(), which we could potentially start using, but I'm not sure it's worth it since the end result would still have to be a Python Unicode string object, given that we can receive up to four characters back.


Grab the http download that Jonathan's code save it and Jonathan's code will use that file.

To be consistent with the way that we are doing everything from a local file (cached).

This is for RO.json file OWLNETS-GRAPH reads on the fly from Internet. Should be pre-downloaded.

Accidentally closed issue when commenting and moving to backlog

The OWLNETS-UMLS-GRAPH downloads ro.json from
https://raw.githubusercontent.com/oborel/obo-relations/master/ro.json and works with it locally. This card can be closed.


Setup runtime deployment

Pre-submit checklist:

Branch

[ ] Tests are provided (if possible)
[ ] Test report is updated (if relevant)
[ ] Commit sequence broadly makes sense
[ ] Key commits have useful messages
[ ] Relevant tickets are mentioned in commit messages
[ ] Formatting, materialized Nix files, PNG optimization, etc. are updated

PR

[ ] Self-reviewed the diff
[ ] Useful pull request description
[ ] Reviewer requested

flake evaluation is extremely slow. I don't know if this is a change from what was prior or if it's limited to the ops shell, but would be good to see some first-pass comparisons to ensure we're not crippling normal dev flow

This PR should get merged as soon as we are happy with it - it needs updating but I'd rather leave that for a follow-up PR and get this infrastructure merged into main first. Here are a few outstanding issues that need to be addressed:

Hydra seems to not be picking this up, we need to figure out why.
As Shea mentioned, flake evaluation is extremely slow. We need to identify why this is and fix the problem before we can accept the change in main.

The Hydra evaluation is failing with an error https://ci.zw3rk.com/jobset/input-output-hk-marlowe-cardano/pullrequest-383#tabs-errors

@Pacman99 @shlevy I added a new commit that removes nixpkgs-unstable from the inputs. We weren't using it anywhere as far as I could tell (we pulled norouter from it but that was not used) and updated the flake.lock. The slow flake evaluation issues seem to have been resolved and now I'm waiting to see if it builds on CI. Please let me know if this will cause any problems.


Test PR - added dependency

Change log description
(2-3 concise points about the changes in this PR. When committing this PR, the committer is expected to copy the content of this section to the merge description box)
Purpose of the change
(e.g., Fixes #666, Closes #1234)
What the code does
(Detailed description of the code changes)
How to verify it
(Optional: steps to verify that the changes are effective)

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (master@fc4b59a). Click here to learn what that means.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##             master       #2   +/-   ##
=========================================
  Coverage          ?   83.50%
=========================================
  Files             ?        8
  Lines             ?      970
  Branches          ?        0
=========================================
  Hits              ?      810
  Misses            ?      160
  Partials          ?        0

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


Audio nodes new problems

@geloescht, @zauner  I must report) Convolver and Waveshaper nodes not work in mozila when development tools is on, when development tools is off this nodes work but irrational in spread mode (when i increases and decreases slice number of spred i get unexpected results (in chrome work same)). More would like to draw attention to the fact that we need a node on the similarity Add(Value Spectral) to avoid wasting CPU. And delay feedback, we have already talked about)

Concerning Convolver and Waveshaper, this is a bug in the Firefox development tools which I have worked around for all other nodes but not those too. I will fix that in a short while.
I guess Waveshaper could be irrational due to its Curve input being a spread and bin size. I must admit I've got some problems wrapping my head around bin size.
Add (HTML5 Audio Spectral) is planned and trivial to implement.
@artofmus: Please feel free to experiment with delays_output = true in Delay (HTML5 Audio). It might just work or require extra implementation - I have not investigated yet.

OK, my newest revision of the audio branch at geloescht/vvvv.js@7cbc7e0a42b217814f698cf8cc34772b should fix the debugging issue in Firefox and also adds Add (HTML5 Audio Spectral) as well as a nice ADSR (Animation).
Any help on how to implement the curve input of WaveShaper according to http://vvvv.org/documentation/binsize would be welcome! The key here is in the implementation of WaveShaper.getAudioSliceCount().

@geloescht thanks, super! But  convolver still strange.. problem probably with FileBuffer, when i change names of the buffers in spreaded string  input - buffers not change (i can specify the names of the buffers only once for a single node). Generally it is not a big Problem, just for cleanliness)

@geloescht the same problem exists in OscillatorNode, type input pin work only for first slice of spread.

@artofmus: Can't reproduce, both seem to work fine to me (tested only on Chrome due to the ongoing issues Firefox has with certain wav files). If you are still experiencing problems please upload a zip file with a minimal example and post it here.

@geloescht I'm sorry,.. I have something confused, checked the wrong code. everything works!)


webhook_features: Parse 'ReACK'

This comment was not parsed: https://github.com/bitcoin/bitcoin/pull/26499#pullrequestreview-1187019834.

The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

Reviews
See the guideline for information on the review process.
A summary of reviews will appear here.

Okay I got very confused, I thought the 'ReACK' could already get parsed but Drahtbot parsed the comment I linked using a previous version of the bot.


Create an install script for ec2 instances

As the proxy won't work through the load balancer (elb can't handle HTTP CONNECT method) we needed to find another way.
The possible options were:

a single ec2 instance running smokescreen directly
a single ec2 instance added manually into a fargate cluster which would still run the docker image
using service discovery within a fargate cluster

This PR goes ahead with the 1st option.  It removes the need for docker images, and creates an install script that can be run in the user_data of an ec2 instance that:

Runs smokescreen as a service, so that if it crashes it will automatically be started again
Pipes the output from smokescreen to a log file
Sets up log rotation on the log file so we don't run out of disk space
Installs Cloudwatch logs agent and forwards the logs in the log file to Cloudwatch to provide easier debugging
Installs Datadog to both monitor the server resources and also receive stats output from smokescreen to monitor success/failure rate etc.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

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

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1299

Relevant Lines:
2090

💛  - Coveralls


Fixed CLion sdkcompat

Checklist

[ ] I have filed an issue about this change and discussed potential changes with the maintainers.
[ ] I have received the approval from the maintainers to make this change.
[ ] This is not a stylistic, refactoring, or cleanup change.

Please note that the maintainers will not be reviewing this change until all checkboxes are ticked. See
the Contributions section in the README for more
details.
Discussion thread for this change
Issue number: <please reference the issue number or url here>
Description of this change

I tried to fix all the build errors for CLion 242. Since the CMakeNotificationProvider was removed I had to move the deregistration also to the sdkcompat.

Just noticed this exception:
com.intellij.diagnostic.PluginException: Cannot create extension (class=com.google.idea.blaze.plugin.CMakeNotificationFilter) [Plugin: com.google.idea.bazel.clwb]
	at com.intellij.serviceContainer.ComponentManagerImpl.createError(ComponentManagerImpl.kt:977)
	at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.doCreateInstance(XmlExtensionAdapter.kt:73)
	at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.createInstance(XmlExtensionAdapter.kt:33)
	at com.intellij.ui.EditorNotificationsImpl$updateEditors$job$1.invokeSuspend(EditorNotificationsImpl.kt:233)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)

Will look at this Thursday.

Update this line to enable CI https://github.com/tpasternak/bazel-intellij/blob/c40b7f5170efa07fd6aeb764af13a074b017bd29/intellij_platform_sdk/build_defs.bzl#L40

Addressed your comments in new PR here: https://github.com/bazelbuild/intellij/pull/6469


Reviewing TPR naming/versioning before next release

Our previous TPR naming isn't well thought enough. For example, we just "v1" for apiVersion.
Another problem is our TPR naming ("etcd-cluster.coreos.com") also needs further review.
We need to review these two before beta release.

It seems that the only thing we need to do is to bump the apiVersion to v1, indicting that the spec is stable now?

Actually it is already v1 :(... We made a mistake before. Closing this one.


USHIFT-1568: feat: added initial smoke tests for selinux

Added initial smoke tests for SELinux
Holding until we decide on SELinux policy change, these are expected to fail until then.
/hold

/unhold
/retest-required
Unholding now that https://github.com/openshift/microshift/pull/2212 has merged.

/hold
@eggfoobar, if we place this test in the standard directory, it is run as part of the standart suite automatically because this scenario works on the dir contents.
Since you added your own scenario file, it create yet another VM and runs this test for the second time in parallel.
In general, since the test runs over 9m, we may want to run it as part of another suite because standard periodic would go higher than 20m then. We should either piggy-back it on another suite, or move to periodics.
From the presubmits, can you discuss with @pmtk if it makes sense to run this together with an upgrade or backup tests? Another option is the isolated network test. Otherwise, let's move it to presubmit as a separate VM.

Ideally this should be part of a successful upgrade, if we're okay with that, I would prefer it. My original idea was to have this be a function you can call from any test as an added check. That'll give us the chance to validate the different things we do in tests. I've pushed up a commit with that change if we think it's simpler. I left the standard since theres no need to create a backup that should speed up test time (MicroShift doesn't need to be turned off). Otherwise, we can continue to have it as it's own seperate VM. Ideally I like

/unhold
Deciding to handle 4.13 upgrades in a different PR.

/lgtm


Removing redundant location redefinition and some other small fixes.

Can we take action and make a new PodSpec? There seem to be 6 pending pull requests, yet no changes in 2 years...


What's mapped in the lower half?

As the kernel of the upper half, I want nothing to be displayed in the lower half.
But TLB after loading looks like this:
(qemu) info tlb
000000000013b000:<PHONE_NUMBER>13b000 ----A----
000000000013c000:<PHONE_NUMBER>13c000 ---------
00000000013ac000:<PHONE_NUMBER>3ac000 ---------
...
Higher half mapped

I realized that 13ac000 belongs to GDT, I created my GDT and can now unmap that address.
But what is mapped in the first two addresses? Can I safely unmap them?

That's probably the context switch function of the boot loader:
https://github.com/rust-osdev/bootloader/blob/ea3f61a57ccd57b7ed37eeed1e53ee6cb2cfdd81/common/src/lib.rs#L235-L260
These pages contain a function that switches to the kernel page tables and jumps to its entry point. You can safely unmap it.
See also #240

If it turns out not to be her, then I suppose I can safely unmap these addresses anyway? Why does the loader leave these things littered?
For example, the same GDT could be safely unmapped by bootloader.

If it turns out not to be context switch function, then I suppose I can safely unmap these addresses anyway?

I'm pretty sure it's the context switch function. If it's not the context switch function, then it depends on the memory for whether it's safe to unmap.

Why does the bootloader leave these things mapped?

The context switch function needs to do two things:

Switch to the kernel's page tables.
Jump to the kernel's entry point.

It needs to do these steps in that order. The problem is that if we don't map the context switch function into the kernel's page tables, we can't do the second step after switching the page tables.

For example, GDT could be safely unmapped by bootloader.

The GDT can't be safely unmapped before switching to a new one. Some instructions like iret read from the GDT and if the GDT is no longer mapped, this causes a page fault.


Make SMARTS logs prettier

closes #213
Lots of noise in the logs including deprecation warnings, errors, etc. Looks quite bad. I took a first pass at it, but there's more todo before this PR can be merged.

[x] Warning: mesh geometry_0 has a primitive with no material, using an empty RenderState
[x] pybullet build time: Oct 18 2020 20:17:57
[x] /Users/julian/.pyenv/versions/3.7.9/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: numpy.ufunc size changed, may indicate binary incompatibility. Expected 192 from C header, got 216 from PyObject
return f(*args, **kwds)

Ok, all clean now. That turned out to be incredibly painful...

However, I am still getting logs from using sh, maybe this is an opportunity for us to make a contribution to sh :smile:
/home/liamchzh/.virtualenvs/smarts-2/lib/python3.7/site-packages/sh.py:28: DeprecationWarning: Using or importing the ABCs from 'collections' instead of from 'collections.abc' is deprecated since Python 3.3,and in 3.9 it will stop working

@liamchzh run pip install -r requirements.txt - you're running an old version of sh. Fixed it already :)


Add publishing action

Workflow to publish depthai_sdk when release comes out

Tested on test.pypi.org, is triggered on any release with v*-sdk tags

@themarpe can you please take a look?


BUG: chrome fix introduces breaking changes for certain custom styles

Describe the bug
The chrome fix introduces breaking changes for certain custom styles, especially for overrides to the border.
To Reproduce
v15.2.1: https://stackblitz.com/edit/stackblitz-starters-zayapw?file=src%2Fmain.ts
v15.2.2: https://stackblitz.com/edit/stackblitz-starters-ntdnfh?file=src%2Fmain.ts
The stackblitzes are identical except for the ngx-popperjs version, yet they result in different UIs.
Expected behavior
A minor version update shouldn't change anything, as long as legitimate properties are used such as [popperStyles]. Also, I think it's now not possible anymore to change the border without introducing this behavior that the border doesn't go away?
Screenshots
v15.2.1

v15.2.2

Versions

ngx-popperjs version: 15.2.2, 16.0.2 (all versions with the chrome fix)

(Also, the issue template for Version has a bug ;))

I could add !important on the hide stylings though...

What's the suggested way to override the default stylings? popperApplyClass? I can of course migrate to that then. But I'd suggest you deprecate [popperStyles] if it's not supported, I wouldn't say it's on me if this library is offering support for that.

Well the best way to override the default stylings is using SCSS and create your own theme.
The other way could be disableDefaultStyling, but honestly I don't remember how it works exactly.
Anyway I'm adding the ! important right away, so you won't need to change anything.
About users having ! important. That's another thing you don't do. You never use ! important unless you really have no choice. The "rule" is creating more specific CSS selectors.
So for now I'll use the important.
And I will do a completely new implementation in v17 using the new floating UI (which hopefully works better with this Chrome update). Damn Google guys!
By the way I tried several fixes, but they must have changed something about how DOM is updated, because I always got the updated css class in the DOM 50ms after the popper checks for the position where executed.
At some point I tried using a timeout of 50 milliseconds. It worked but it was horrible as the popover was shown for a few ms in one place and moved immediately. But of course if you have a slower PC the risk is really seeing that.
Too horrible for me :D

Thanks for the explanation, I'll try to update to the custom theme then!

Fixed in v 16.0.4

The custom theme is a bit limited, it only allows for the following properties if I'm not mistaken:
@mixin ngx-popperjs-theme($background, $text, $max-width: $default-max-width, $z-index: $default-z-index) {

Specifically width and padding are important for our use case.
I migrated to the custom theme for the supported properties and for the other ones I used popperApplyClass. That should cause less headaches, since it has low prio (popper-special-style-feedback in the screenshot).

It can't be used to override any of your styles since in hidden as well as in non hidden mode it comes after your selectors. So for example overriding the box shadow isn't possible like this. I dropped it since it wasn't as important to me, but if it was important, I'd have to use the custom styles or otherwise use the dreaded !important in the css class.

@bersling I said to create a custom theme, not to use the helper mixin!

I tried to follow the readme on this, which reads:
Optionally you can include in your styles.css / styles.css one of the prebuilt themes:

    @import node_modules/ngx-popperjs/css/theme-dark.css

    @import node_modules/css/theme-white.css

    @use ngx-popperjs/scss/theme as popperBaseTheme

    @use ngx-popperjs/scss/theme-dark as popperDarkTheme

    @use ngx-popperjs/scss/theme-white popperWhiteTheme

or easily create your own theme using the @mixin:

@use "ngx-popperjs/scss/theme" as popperBaseTheme;

body {
    @include popperjs.ngx-popperjs-theme($background-color, $text-color, $max-width, $z-index);
}

So I thought including this mixin is what you meant. If it's not this I'm not sure what you mean by custom theme, is there any other documentation on this, or do you have an example?

I tried to follow the readme on this, which reads:
Optionally you can include in your styles.css / styles.css one of the prebuilt themes:

    @import node_modules/ngx-popperjs/css/theme-dark.css

    @import node_modules/css/theme-white.css

    @use ngx-popperjs/scss/theme as popperBaseTheme

    @use ngx-popperjs/scss/theme-dark as popperDarkTheme

    @use ngx-popperjs/scss/theme-white popperWhiteTheme

or easily create your own theme using the @mixin:

@use "ngx-popperjs/scss/theme" as popperBaseTheme;

body {
    @include popperjs.ngx-popperjs-theme($background-color, $text-color, $max-width, $z-index);
}

So I thought including this mixin is what you meant. If it's not this I'm not sure what you mean by custom theme, is there any other documentation on this, or do you have an example?

With a bit of fantasy you take the SCSS source and write your own theme!

So you mean in my scss I should do something like:
::ng-deep {
   div.ngxp__container {
     background: $background;
     color: $text;
     border: 0;
     max-width: $max-width;
     box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 5px 8px 0 rgba(0, 0, 0, 0.14), 0 1px 14px 0 rgba(0, 0, 0, 0.12);
     z-index: $z-index;
     // other stuff i want to do

     > .ngxp__arrow {
       &:before {
         background-color: $background;
       }
     }
   }
}

?
Then I'd have to rely on internals of your implementation, e.g. that you named your class ngxp__arrow and my styling would break if you'd change something about that?

So you mean in my scss I should do something like:
::ng-deep {
   div.ngxp__container {
     background: $background;
     color: $text;
     border: 0;
     max-width: $max-width;
     box-shadow: 0 3px 5px -1px rgba(0, 0, 0, 0.2), 0 5px 8px 0 rgba(0, 0, 0, 0.14), 0 1px 14px 0 rgba(0, 0, 0, 0.12);
     z-index: $z-index;
     // other stuff i want to do

     > .ngxp__arrow {
       &:before {
         background-color: $background;
       }
     }
   }
}

?
Then I'd have to rely on internals of your implementation, e.g. that you named your class ngxp__arrow and my styling would break if you'd change something about that?

No, I wouldn't put that style in some component. You should have it in the styles.scss.
Anyway those classes cannot change until v17.
You can use those without worrying about changes.
Cheers

I got this bug after the upgrade from 14.1.6 to 14.1.8, is it related to the bug you fixed?
https://github.com/tonysamperi/ngx-popperjs/assets/108550569/1fd492ef-58f6-4c91-bd52-63b309996d2a

I got this bug after the upgrade from 14.1.6 to 14.1.8, is it related to the bug you fixed?
2023-09-01_11-25-37.mp4

Hi @andreivarlamov
could be. It's weird because if you saw the fix, I ended up delaying the popper instance creation...
Maybe it has something to do with the "hover" trigger.
I'll try this in my demo page and tell you if I have the same behaviour.

Hi @tonysamperi, thank you for your help. I finally reproduced that bug, it's because of popperDisableStyle=true option. Still exists in 15.2.4.

@andreivarlamov can you create a blitz?

https://stackblitz.com/edit/stackblitz-starters-nefrn2?file=src%2Fmypopper%2Fmypopper.component.html
And you're right, if the trigger is Hover and you enter-exit from the target quickly it works buggy even with enabled default styles. Version 15.2.1 works much better.

Hey @andreivarlamov
thanks! Now I was able to understand what's going on!
Honestly I never understood why this problem was born.
In fact I actually discovered that the problem is always there, but is just masked even if you don't remove styles.
The mask is the animation!
If you just use the popperDisableAnimation attribute, you'll see the same problem.
I'm pushing a fix right now.
I was able to fix by separating the change on "display" and "opacity".

@andreivarlamov nope, I spoke too soon. It doesn't work and now I broke v16.
I'm sorry pal, but there's really no solution with popper.
I suggest you move to ngx-float-ui, since I released v15 yesterday.
That doesn't have the issue.
Damn now I have to revert v16


fix: add bucket to expected fields

Given that bucket is now an obligatory field of the policy, it should
also be obligatory in the fields submitted to GCS.

@frankyn Should I hold off on merging googleapis/google-cloud-ruby#5803, which ensures that  bucket is not returned in PostObject fields?

You should be okay to merge, but you can't cut a release until Monday.

@frankyn I'm confused. googleapis/google-cloud-ruby#5803 conflicts with the change in this PR.

Too many PRs and got confused with the context of the PR. Sorry folks.
@manish-qlogic in this case, bucket is not expected in the fields set because the context is provided by the URI. This is expected by the GCS team through conversation: @ranylee and @houglum

For what is worth I tested today several generated forms and the upload works without the bucket field. According to the docs, the bucket, even when in the policy, can be specified in the post URL or as part of the key when actually posting.
https://cloud.google.com/storage/docs/xml-api/post-object

ACK, sorry for the confusion.

Not a problem, thanks for making sure conformance tests are consistent and sending changes here


Move Serving and Pipelines suites out of Dashboard folder

first PR part of the test suites refactoring

Besides running Smoke to see nothing is broken, lgtm.

Besides running Smoke to see nothing is broken, lgtm.

yes, didn't get time to do it yet. Will do asap. Ty

PR validation:

Smoke regression job rhods-ci-pr-test/3005/ PASS

If there were issues with Imports, dryrun would fail
are you sure?


Feature: Refactored American/British Translator against new boilerplate

@nhcarrigan and I updated my version of the American/British Translator Project against the updated boilerplate.
Issue Here:
https://github.com/freeCodeCamp/freeCodeCamp/issues/39692
Boilerplate PR here:
https://github.com/freeCodeCamp/boilerplate-project-american-british-english-translator/pull/6
Updated FCC Tests here:
https://github.com/freeCodeCamp/freeCodeCamp/pull/39822
Note:  The Repl.it project and link will need to be updated. If you get them to me, I will update this branch.

Removed user stories as per https://github.com/freeCodeCamp/freeCodeCamp/issues/39721

Removed user stories as per https://github.com/freeCodeCamp/freeCodeCamp/issues/39721

Removed README.md

Also, @moT01 should the sample.env file be in this demo project?

I would assume that it should @Sky020 - I haven't got to reviewing these just yet so I can't be certain. but yes.

At some point it's going to make sense to just merge this thing and then do some mass changes.  I can keep plinking away at it, but the overhead of managing as many PRs as I have right now is getting a bit extreme.

@moT01 Thanks, Tom.  I'd managed to catch that in my personal code but I'd forgotten to push the changes out on the demo project.

Hey @SaintPeter when you have a moment, could you remove these lines:
https://github.com/freeCodeCamp/demo-projects/blob/be0ace3204b98789b9f667504e170bd1742a7f6a/american-british-translator/routes/fcctesting.js#L52-L59
Per my comment in freeCodeCamp/freeCodeCamp#39631 this particular route is for another project (not sure how it ended up in this boilerplate too).

@nhcarrigan Done.

@moT01 Thanks for the catch.  I fixed the code so it takes into account if highlighting has been requested or not. It now passes 30/30 tests.


Message "Resource too large" not displayed (Android)

Sharing a 80MB video.
Expected
Error message "80MB is too big, max is 30MB"
Observed
No error message. Scanning doesn't work, it keeps scanning.
Observed on 2 devices.

Not observed, on a 3rd device.

Worked around by #576
Please reopen later if design changes


updated token length

Hi @fmoliveira , first off this project has been awesome and very helpful for developers joining the community, thank you for that.
Second, I wanted to update the available tokens to take into account a restriction that is in the contract that stops minting at 7777. Anyone trying to mint one of the ids 7778 - 8000 will not be able to unless they are the contract owner.
This is to leave a reserve for us to mint tokens for select community members who want come in after we sell out, to do giveaways, and to possibly fundraise after we sell out. As it looks, we are starting to get close as we have over 5,092 meaning there are only 2,685 left.
https://etherscan.io/address/0x25ed58c027921e14d86380ea2646e3a1b5c55a8b#code#L1527
Thanks for your help again, and see you in the DAO!

Hi @dabit3 !
Thank you soooo much for your PR, it means the world to me! And I'm sorry for the unpolite delay in checking it out!
I see, that makes a lot of sense! I've added a check too that will not allow pressing the mint button for these tokens (it says the token is reserved for the owner), but I imagine this can still be confusing as I've read many people use the site only to check the list of available tokens, and go mint them on the official's DAO website. So it makes sense to hide these tokens in the list!
Merged, thank you so much again! 🚀


Wait for OSX bison fix

brew install flex bison
export PATH="/usr/local/opt/flex/bin:/usr/local/opt/bison/bin:$PATH"


[#19] Improve error messages. Check consitency of image dimensions.

Closes #19

Coverage increased (+0.06%) to 97.906% when pulling 72f7d73750a634fa290f2480c08be175fd45a101 on feature/19-error-messages into 29a53cfab3de238539f7b7b86988db576fb2400c on master.

Coverage increased (+0.06%) to 97.906% when pulling 72f7d73750a634fa290f2480c08be175fd45a101 on feature/19-error-messages into 29a53cfab3de238539f7b7b86988db576fb2400c on master.

Coverage increased (+0.06%) to 97.906% when pulling 72f7d73750a634fa290f2480c08be175fd45a101 on feature/19-error-messages into 29a53cfab3de238539f7b7b86988db576fb2400c on master.

Coverage increased (+0.06%) to 97.906% when pulling 72f7d73750a634fa290f2480c08be175fd45a101 on feature/19-error-messages into 29a53cfab3de238539f7b7b86988db576fb2400c on master.