InvalidOperationException when attempting to save a valid PdfDocument

I discovered a bug in the PdfDocument.Save functions.
Expected Behavior
Saving without exception.
Actual Behaviour
An InvalidOperationException("Cannot save a PDF document with no pages.") is triggered on a freshly opened PdfDocument, even if it contains pages.
This behaviour is only triggered in the compiled programme or during uninterrupted code runs in the debugger (I am using VS 2017). When using step by step debugging (F10), the exception is not triggered.
Steps to Reproduce the Behavior
Calling the following Test() function with a valid PDF byte array triggers the InvalidOperationException when reaching the  pdfDoc.Save(pdfFilePath) instruction. All the other checks before are passed successfully.
  public static void Test(this byte[] pdf, string pdfFilePath)
  {
      if (pdf == null) { throw new ArgumentNullException(nameof(pdf)); }

      PdfDocument pdfDoc;
      try
      {
        pdfDoc = PdfReader.Open(pdf.ToPdfMemoryStream(), PdfDocumentOpenMode.Import);
      }
      catch (FormatException)
      {
        MessageBox.Show("Error: Invalid or empty PDF.");
        return;
      }

      pdfDoc.Save(pdfFilePath);
  }

   public static MemoryStream ToPdfMemoryStream(this byte[] pdf)
    {
      if (pdf == null) { throw new ArgumentNullException(nameof(pdf)); }

      PdfDocument outputDocument = new PdfDocument();
      using (MemoryStream inputStream = new MemoryStream(pdf))
      {
        try
        {
          PdfDocument inputDocument = PdfReader.Open(inputStream, PdfDocumentOpenMode.Import);
          foreach (PdfPage page in inputDocument.Pages)
          {
            outputDocument.AddPage(page);
          }
        }
        catch (InvalidOperationException)
        {
          throw new FormatException("Kein gültiges PDF-Dokument.");
        }
      }
      if (outputDocument.PageCount == 0) { throw new FormatException("PDF is empty"); }

      MemoryStream outputStream = new MemoryStream();
      outputDocument.Save(outputStream);
      return outputStream;
    }

Workaround
Insert the following line in front of pdfDoc.Save(pdfFilePath);:
      if (pdfDoc.PageCount == 0) { throw new FormatException("PDF is empty"); }
Possible Fix
The exception is thrown when in the void DoSave(PdfWriter writer) function of the PdfDocument class the following condition is met:
            if (_pages == null || _pages.Count == 0)
The bug is caused by the _pages variable not being initialised. This also explains the workaround: Calling PdfDocument.PageCount triggers the initialisation of _pages.
A possible fix of the bug is to replace _pages with Pages in the incriminated line, which triggers the initialisation. Here is a compact version of the fix that avoids to attempt the initialisation twice:
            if ((Pages?.Count ?? 0) == 0)

Files opened without the Modify flag cannot be saved.

The workaround demonstrates that the PDF can be saved just by evaluating PdfDocument.PageCount before calling PdfDocument.Save(). Calling PdfDocument.PageCount initialises _pages. Then the if (_pages == null || _pages.Count == 0) check is passed. This seems to indicate a flaw in the whole process to me.

The bug report is obsolete with PDFsharp 6.0.0-preview-3 coming next month or so.


feat: adding function to check if NetworkBehaviour has any Dirtybits

This is useful for doing custom OnSerialize where you only want to check if should be dirty is not already dirty.
for example
if (!HasDirtybit() && ExpensiveCheck())
{
    SetDirtyBit(1UL);
}

@James-Frowen can you elaborate please?
why did no one need this before?
what's the exact use case right now? did someone ask for it?
and if we merge, please use common notation: SetDirtyBit has 'Bit' in uppercase, yours has 'bit' in lowercase.
Also 'AnyDirtyBit' might be more obvious or not?

We can close, I've taken a different approach in my project so dont need this.

We can close, I've taken a different approach in my project so dont need this.


Unable to change a cell

I am unable to write new data in a cell. My code is:
workbook = RubyXL::Parser.parse("test.xlsx")
worksheet = workbook[0]
counter = 0

books.each do |book|
      if not worksheet[counter].nil? and not worksheet[counter][0].nil?
        worksheet[counter][0].change_contents(book.title)
      else
        worksheet.add_cell(counter, 0, book.title)
      end
      counter = counter + 1
end

The code works when I run it on a newly created XLSX file with Excel 365. It doesn't run the second time. I get the error - undefined method `change_contents' for #RubyXL::Cell:0x000000000b14d498 .
I get another error when I run the code on an existing XLSX file generated with Excel 2007 - undefined method `change_contents' for #<RubyXL::Cell(0,0): "0", datatype="s", style_index=nil>
What am I doing wrong?

What am I doing wrong?

Forgetting to read the documentation, in particular this section?

here is the module docs https://www.rubydoc.info/github/weshatheleopard/rubyXL/RubyXL/CellConvenienceMethods


Gfx-settings-via-api

Added the ability to get/set graphics settings from the metaverse api rather than calling localstorage, and get specific/all settings as json.

Based on https://github.com/webaverse/app/pull/2510/files

This PR is good but cannot be merged because it has been based on a currently unmergable PR.

@avaer resubmitted with the unrelated files removed.

closing in favor of #2659


The default number of respawn number of cita-forever

Description
A more suitable number.
Its' 3 at present.
Additional Information
https://github.com/cryptape/cita/blob/develop/scripts/config_tool/config_example/forever.toml

modify


Added Notepad Application

Notepad application is highly helpful for making our work easier. Done this application with Tkinter module in Python

Please add a project description as well in the file in the folder


Potential DoS vector: blobs that are too big to be included in a square

Problem
Originally reported via @tuxcanfly. See https://gist.github.com/tuxcanfly/207ab3dc1fac4bb9c38bedad2a053f18
Proposal
Is it possible for CheckTx to reject this type of transaction prior admittance into the mempool?

A stateful check could be based on the GovSquareSize of 64 which would reject transactions larger than ~2MiB
A stateless check could be based on the SquareSizeUpperBound of 128 which would reject transactions larger than ~8MiB

Note we already have an ante handler that rejects txs where the total blob size is too large. It's possible that ante handler doesn't catch edge cases near the total blob size because it derives an upper bound based on a number of parameters. See

https://github.com/celestiaorg/celestia-app/issues/2156
https://github.com/celestiaorg/celestia-app/pull/2202
https://github.com/celestiaorg/celestia-app/issues/2214

I think we calculate the space taken by the blobs incorrectly https://github.com/celestiaorg/celestia-app/blob/2d261a2a0f7f627044342929b534a16b762c47e0/x/blob/ante/max_total_blob_size_ante.go#L74-L79
it should be in regards of the amount of shares * 512 bytes i.e.
for _, size := range sizes {
	sum += uint64(shares.SparseSharesNeeded(size)) * appconsts.ShareSize
}

Also I would consider of adding an extra share or two as buffer for padding

getTotal is only used here where we want the number of total bytes in the blob sizes.

Also I would consider of adding an extra share or two as buffer for padding

Agreed. That ante handler doesn't account for padding shares so this is related to https://github.com/celestiaorg/celestia-app/issues/3081

getTotal is only used here where we want the number of total bytes in the blob sizes.

yes but we want the total bytes based on the amount of shares that those blobs will occupy; not the raw bytes of the blobs

🤦♂ you're right, good catch!

This issue may be partially mitigated by the fix in #3082 which will be released in the next major release.

@rootulp since this is a bug, is it okay if we treat is as such? and is this still an open issue given #3082?

TBH I still think this is open. #3082 improves the ante handler to reject PFBs that are guaranteed to not fit in a data square. But I think the DoS vector still exists and a malicious actor could craft PFBs that pass the ante handler but fail to fit in a data square.

Agreed it is a bug. What do you mean by "treat it as such"?

mainly that we just add a label lol and discuss what is needed to fix it ofc
do we need more tests than what were added in #3082? what do we need to do to be confident that this isn't occuring? I could be missing something, but we should be able to deterministically test for this, correct?

what do we need to do to be confident that this isn't occuring?

One more idea to mitigate the DoS: modify BroadcastTx from blocking to non-blocking

do we need more tests

We could use a fuzz test that submits blobs to the ante handler and verifies that if a valid PFB tx passes the ante handler then it also must be able to be included in an empty block (i.e. a block where it is the only tx).

One more idea to mitigate the DoS: modify BroadcastTx from blocking to non-blocking

does the signer in the user packager using BroadcastMode Sync count for non-blocking? In general I agree that we should get rid of broadmost mode block, and perhaps a stupic question, but how does this reduce DoS? just that it reduces the resources required per connection? If so, we do have configurable limits on the time each node will wait and how many active connections it maintains help?

We could use a fuzz test that submits blobs to the ante handler and verifies that if a valid PFB tx passes the ante handler then it also must be able to be included in an empty block (i.e. a block where it is the only tx).

adding a fuzzer is a good idea! for this specific issue, perhaps we could limit to the scope to just the size of the PFB and the problematic antehandler?


[AMD backend] turn on more unit tests for better coverage

This PR is to turn on all the unit tests that passed on AMD backend.

What's the new time for the AMD tests?  (Just want to make sure they're still faster than our slowest runner, which is A100 today.)

What's the new time for the AMD tests? (Just want to make sure they're still faster than our slowest runner, which is A100 today.)

From the below it's 6m; faster than H100, which is 7m. We can optimize once this becomes slow.

@scxiao  It seems that the integration test is stuck with A100, probably because A100 was removed and added back yesterday while this PR is filed. Can you rebase or merge main?

@scxiao It seems that the integration test is stuck with A100, probably because A100 was removed and added back yesterday while this PR is filed. Can you rebase or merge main?

Thanks. Done.


MKL functions are enabled by default

Macro ONEAPI_DAAL_USE_MKL_GPU_FUNC was replaced by ONEAPI_DAAL_NO_MKL_GPU_FUNC with inversing of benaviour. MKL functions are used by default now.
It is fix isuue #245

PCm: https://ecmd.inn.intel.com/commander/link/jobDetails/jobs/ea338875-025f-f172-8bb3-8cdcd4b723a1?s=Jobs?firstPage=1

PCm: http://intel-ci.intel.com/ea35cfcf-7d50-f1d1-aee4-8cdcd4b723a1?

restart

last PCm: PCm: http://intel-ci.intel.com/ea36b6cd-1a6c-f168-890c-8cdcd4b723a1?


nui vim.ui.select callback is called twice,

Describe the bug
NUI vim.ui.select callback is called twice, once for "on_close" and once for "on_submit", not sure if that has always been the case but I just happened to discover it.
NUI Integration in dressing.nvim
System information

OS: Arch Linux
Neovim version: NVIM v0.10.0-dev-1840+g97bea3163a
Is this related to a specific vim.ui.select backend? If so, which one? NUI
Dressing config:

require('dressing').setup {
  select = {
    backend = { "nui", "fzf_lua", "builtin" },
  }
}

Of course, thats the MRE for me, using lazy.nvim, without lazy loading.
To Reproduce
Steps to reproduce the behavior:

Run the following
:lua vim.ui.select({'a','b'}, { prompt = 'test' }, function(input) print(input) end)
Either cancel with Esc, or confirm any of its values, should report both the value itself and an extra nil

By commenting out on_close, nui integration works as intended, not sure if that bring any side effects into the mix :disappointed:

Should be fixed


Tokenize a string with a regular expression.

Tokenizer uses separators to tokenizer a string, scikit-learn is using regular expressions.
Possible implementation: add an option to use regular expression to tokenize. See https://github.com/onnx/onnxmltools/pull/204.

The default regular expression is r"(?u)\b\w\w+\b", which can be achieved by putting "\u" and "\b" to the separator list of the current tokenizer. I am not sure how popular customized regular expression is, but I never touched that attribute by myself. In addition, I am not confident that supporting regexp is good to runtime because it has no standard and varies from library to library. Could we still use native separator list to mimic r"(?u)\b\w\w+\b" until seeing some strong feedbacks from users? @yuanbyu, do you have any comments here?

I'm in favor of using C++ regex. It is easier to understand from a user point of view and this need might come back in the future.

I don't have a strong opinion here. I assume that we don't plan to change the current support of separator list, and regular expression could be added later without breaking backward compatibility.  I also assume that we don't have a real use case for regex and this is something forward looking and nice to have.  If this is the case, I wouldn't waste time on this for now.

Hum, I guess the StringNormalizer op would nt help :
https://github.com/onnx/onnx/blob/master/docs/Operators.md#stringnormalizer
Should nt tokenization ("string splitting" ? "StringTokenization" op?) be simply added to onnx standard ?

https://github.com/Microsoft/onnxruntime/pull/480
https://github.com/Microsoft/onnxruntime/pull/617


decode transaction inputs

TL;DR
Added transaction data decoding functionality for transactions when a function signature is provided.
What changed?

Introduced new ABI parsing utilities to handle function signatures
Added support for decoding transaction input data using parsed ABI
Created a new DecodedTransaction type that includes the original transaction data along with decoded parameters
Enhanced transaction handlers to decode transaction data when a function signature is provided

How to test?

Make a request to /{chainId}/transactions/{contractAddress}/{signature}
Verify that the response includes decoded transaction data with:

Function name
Function signature
Decoded input parameters as key-value pairs

Test with various function signatures, including those with complex parameter types (tuples, arrays)
Verify that regular transaction endpoints continue to work without decoded data

Why make this change?
To improve transaction data readability by automatically decoding the raw input data into human-readable format when the function signature is known. This makes it easier for users to understand the actual parameters passed in contract interactions without having to manually decode the transaction data.

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#124  👈 (View in Graphite)
#123
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Merge activity

Dec 6, 2:56 PM EST: A user started a stack merge that includes this pull request via Graphite.


Add WebView2Samples dependency

Add WebView2Samples as dependent_repositories to enable Cross-repository reference. Those under webview2/ can reference WebView2 sample code with such syntax:
:::code language="cpp" source="../code/sample/SampleApps/WebView2APISample/ScenarioAuthentication.cpp" range="50-69":::

:::code language="csharp" source="../code/sample/SampleApps/WebView2WpfBrowser/MainWindow.xaml.cs" id="BasicAuthenticationRequested":::

Docs Build status updates of commit 13c137f:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

.openpublishing.publish.config.json
:white_check_mark:Succeeded

microsoft-edge/docfx.json
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Updated Central Command Map

:cl: Changes to Central Command map; :cl:

Replaced: Lights from permanently powered to actual power consuming ones
Edited: the common area by adding a botany section
Changed: Kitchen area by including a bar with dispensers.
Changed: Kitchen got expanded with a new freezer unit.
Changed: Medical now has a virology
Added: Scrubber network added
Added: Security cameras added to the station
Added: Solars
Replaced: Some eye-destroying lighting with more acceptable non-laser ones.
Added: late-join spawns and some start-job spawns just in case
Added: a waste-disposal and recycling network with a janitorial section.
other things I probably forgot.

Submit upstream please

There are some "Easter Eggs" in the map which upstream probably wouldn't want. I'd have to remove that and all.

ok


Persistence Manager

Closing this PR w/o merging as we don't need this for view manager (we are not using any JSON-based ALCs) and this change actually breaks our current implementation.  We rely on shared blobs to end up with an ACL of * and this changes that to "*" (quoted, as a JSON-serialized string value would be).
I'd say let's leave this along until we actually get to a point where JSONBlob is doing something with the ALC that's not just null vs *.


Inferencing

Hi @Logan-Lin,
Thanks  for conducting this research. Can you please provide a sample file/code for inferencing ?

Apologies for the (extremely) delayed response. I have recently reformatted the code and refined the instructions, which you can review if needed.
The inferencing code is included in the main.py file as follows:
if args.draw:
    val_images, val_ODTs, _ = dataset.get_images(1)
    val_images, val_ODTs = shuffle(val_images, val_ODTs)
    val_num = args.numimage
    gen_steps = diffusion.p_sample_loop(denoiser, shape=(val_num, *(val_images.shape[1:])),
                                        y=torch.from_numpy(val_ODTs[:val_num]).float().to(args.device),
                                        display=True)
    gen_images = gen_steps[-1]

Another example can be found in model/trainer.py:
def generate(self, meta):
    self.denoiser.eval()

    batch_iter = list(zip(*meta))
    gens = []
    for batch in tqdm(next_batch(batch_iter, self.batch_size), total=len(batch_iter) // self.batch_size,
                      desc='Generating images'):
        batch_img, batch_odt, batch_arr = zip(*batch)
        batch_odt = torch.from_numpy(np.stack(batch_odt, 0)).float().to(self.device)

        gen = self.diffusion.p_sample_loop(self.denoiser, shape=np.array(batch_img).shape,
                                           y=batch_odt, display=False)[-1]
        gens.append(gen)
    return np.concatenate(gens, axis=0)

Both examples call the p_sample_loop function in the diffusion model for inferencing.
I hope this is helpful to you and future researchers who access this repository.


scalafmt: 1.4.0 -> 1.5.1

Motivation for this change
New scalafmt versions released
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build scalafmt

Success on x86_64-linux (full log)
Attempted: scalafmt
Partial log (click to expand)
Downloaded https://repo1.maven.org/maven2/org/scala-lang/scala-library/2.12.2/scala-library-2.12.2.jar
Downloaded https://repo1.maven.org/maven2/com/github/scopt/scopt_2.12/3.5.0/scopt_2.12-3.5.0.jar.sha1
Downloaded https://repo1.maven.org/maven2/com/github/scopt/scopt_2.12/3.5.0/scopt_2.12-3.5.0.jar
Downloaded https://repo1.maven.org/maven2/com/trueaccord/scalapb/scalapb-runtime_2.12/0.6.0-pre2/scalapb-runtime_2.12-0.6.0-pre2.jar
Downloaded https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.2.0/protobuf-java-3.2.0.jar
Downloaded https://repo1.maven.org/maven2/org/scalameta/trees_2.12/1.7.0/trees_2.12-1.7.0.jar
building '/nix/store/xdvkjh89apwcwz9pi3bar30ka95h5hgw-scalafmt-1.5.1.drv'...
installing
running tests
/nix/store/v3b6fw1wdxz1axzy0drdzv31mglm80as-scalafmt-1.5.1

No attempt on aarch64-linux (full log)
The following builds were skipped because they don't evaluate on aarch64-linux: scalafmt
Partial log (click to expand)

a) For `nixos-rebuild` you can set
  { nixpkgs.config.allowUnfree = true; }
in configuration.nix to override this.

b) For `nix-env`, `nix-build`, `nix-shell` or any other Nix command you can add
  { allowUnfree = true; }
to ~/.config/nixpkgs/config.nix.

Success on x86_64-darwin (full log)
Attempted: scalafmt
Partial log (click to expand)
Downloaded https://repo1.maven.org/maven2/org/scalameta/inputs_2.12/1.7.0/inputs_2.12-1.7.0.jar
Downloaded https://repo1.maven.org/maven2/com/github/scopt/scopt_2.12/3.5.0/scopt_2.12-3.5.0.jar.sha1
Downloaded https://repo1.maven.org/maven2/com/github/scopt/scopt_2.12/3.5.0/scopt_2.12-3.5.0.jar
Downloaded https://repo1.maven.org/maven2/com/trueaccord/scalapb/scalapb-runtime_2.12/0.6.0-pre2/scalapb-runtime_2.12-0.6.0-pre2.jar
Downloaded https://repo1.maven.org/maven2/com/google/protobuf/protobuf-java/3.2.0/protobuf-java-3.2.0.jar
Downloaded https://repo1.maven.org/maven2/org/scalameta/trees_2.12/1.7.0/trees_2.12-1.7.0.jar
building '/nix/store/mjjb463f8149xx7jlzpcblixm7wwbsdv-scalafmt-1.5.1.drv'...
installing
running tests
/nix/store/y7kx5gk04awbc97rd32f4r5sxijlw0qv-scalafmt-1.5.1

Thanks!


Help A Noob?

This isn't so much a problem statement as a request.
I've done a bit of programming with Vue but the tables in Buefy are beyond my comprehension, unfortunately. I'd love to be able to use them.
Is there a place where I can see real, working, source with any of the Table examples in the Buefy documentation? Ideally I'd like a single source file I can copy and paste into my own development environment, that will just work upon pasting, and I can mess around with to learn.
Thank you!

@thc1967 Table component documentation is complete and in next release will be async data example (backend sorting and pagination too).
What's your doubt or use case?

Consider the following shell:

        <link rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons">
        <link href="{{ mix('css/app.css') }}" rel="stylesheet">

Buefy Test

(I'm using Laravel so this is a Blade template...)
When I paste the following into the app's DIV tag, the controls all work exactly as I expect and Chrome's Java console reports no errors:

                        Basic

                        Default

                    Tab3 Content

This proves that Vue, Bulma, and Buefy are all working properly. Great! Let's try a table!
Unfortunately, when I paste verbatim the first sample table code from the documentation (not copied here for brevity), I get several errors in Chrome's Java console:

Uncaught SyntaxError: Unexpected token export

[Vue warn]: Error compiling template: (` contents echoed)

Templates should only be responsible for mapping the state to the UI. Avoid placing tags with side-effects in your templates, such as

@thc1967 I'm sorry but it's not easy help you in this way.
Could you provide us an example of your project ?

What more do you need to see than what I offered above?
Am I supposed to put the example code from the tables page into a Vue component of my own instead of putting it into an HTML page verbatim? Is that the step / trick I'm missing?

For example your b-table code..

OK... all I did was paste the sample into the shell I posted above. I'm sure that's wrong but I don't know how to split it up correctly. Here is the entirety of the code.

        <link rel="stylesheet" href="//fonts.googleapis.com/icon?family=Material+Icons">
        <link href="{{ mix('css/app.css') }}" rel="stylesheet">

Buefy Test

                <template scope="props">

                        @{{ props.row.id }}

                        @{{ props.row.first_name }}

                        @{{ props.row.last_name }}

                        @{{ new Date(props.row.date).toLocaleDateString() }}

                        @{{ props.row.gender }}

                </template>

                <template slot="empty">

Nothing here.

                </template>

With this code, I see the outline of the table with a frowny face, "Nothing here" under it, and a loading spinner spinning over the top of it.


language drop down in own langauages plus english

Description
Straightforward addition of languages written in their own  languages, as well as English.
This has not been tested If needed, I will set up the tests locally next week
Fixes #168
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)

Checklist before requesting a review

[x] I have performed a self-review of my code
[x] My code follows the style guidelines of this project
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

There is a more sophisticated solution by @turnbullerin here:
https://github.com/turnbullerin/erddap/tree/language_picker_fix
I believe that it is preferable to this PR, so I will close this


Make a slider in float type with a particular step value

I'm trying to make a slider in float type with a particular step value.
How to make it?
I think it will be easier to use if there's a "step" property:
pressure = 0.05
with tgb.Page() as page:
    tgb.slider("{pressure}", min=0.01, max=0.1, step=0.01)

You can code this, for example as a way to mimic what you want to do:
import taipy.gui.builder as tgb
from taipy.gui import Gui

# create a list of string 0.1, 0.2, 0.3, ...
string_list = [str(i / 10) for i in range(1, 11)]

pressure = string_list[0]
with tgb.Page() as page:
    tgb.text("Slider:")
    tgb.slider("{pressure}", lov=string_list)

Gui(page).run()

We could add what you said with step directly to Taipy to make it easier. Let's discuss about it.

I agree with this issue. We should align with the Python standards. For example, in NumPy, np.arange uses min, max and step with step defaulting to 1. This allows you to easily do both integer and float sliders

Thank you for your response.
I look forward to it being added!

I want to work on this!

@Satoshi-Sh I have assigned this issue to you. Here you can find how to contribute to Taipy.

Thanks, @FlorianJacta .  I need help with this PR, it would be nice if you could guide me.  I made a draft pull request already.
I updated Slidebar.tsx to take step argument but it seems not working according to the test I wrote.
I also struggled to set up formatted for this project.

I commented your PR

There is an issue with step function when used with markdown. see code below
<|{vari}|slider|min=0|max=200|step=1|change_delay=2000|orientation=vert|on_change=sliderchange|>
the code throws error and does not recognize step. when removed from code the slider functions normally.

This feature appeared in 3.1. What Taipy version so you have?
I wasn't able to replicate the issue on 3.1.

Hi,
My version is 3.1.1
See the screenshot below
[cid:6635a724-9a3e-4ffb-ac1b-671cbd4dd264]
The above slider code runs even with this error shown in VSCode but step functionality does not work for slider.
Regards
Sent from Outlookhttp://aka.ms/weboutlook

From: Florian Jacta @.>
Sent: Monday, June 17, 2024 12:50 PM
To: Avaiga/taipy @.>
Cc: pkinani @.>; Comment @.>
Subject: Re: [Avaiga/taipy] Make a slider in float type with a particular step value (Issue #639)
This feature appeared in 3.1. What Taipy version so you have?
I wasn't able to replicate the issue on 3.1.
—
Reply to this email directly, view it on GitHubhttps://github.com/Avaiga/taipy/issues/639#issuecomment-2172479953, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWDEU5SMUK4FP6ZXDPGO42LZH2E27AVCNFSM6AAAAABBIBZTR6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZSGQ3TSOJVGM.
You are receiving this because you commented.Message ID: @.***>

[cid:4fddf86e-110f-4109-a722-8eb79a37c84d]
The screenshot is given above. Step=5 is showing error! In the code.
Screenshot file also attached.
Hope this helps
Sent from Outlookhttp://aka.ms/weboutlook

From: Florian Jacta @.>
Sent: Tuesday, June 18, 2024 1:52 PM
To: Avaiga/taipy @.>
Cc: pkinani @.>; Comment @.>
Subject: Re: [Avaiga/taipy] Make a slider in float type with a particular step value (Issue #639)
Hi, I cannot see your screenshot. Could you provide the code as well as the traceback?
—
Reply to this email directly, view it on GitHubhttps://github.com/Avaiga/taipy/issues/639#issuecomment-2175502034, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWDEU5R5UJQELH2ZAO7LG63ZH7U5BAVCNFSM6AAAAABBIBZTR6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZVGUYDEMBTGQ.
You are receiving this because you commented.Message ID: @.***>

Screenshot sent via github
Sent from Outlookhttp://aka.ms/weboutlook

From: Florian Jacta @.>
Sent: Tuesday, June 18, 2024 9:20 PM
To: Avaiga/taipy @.>
Cc: pkinani @.>; Comment @.>
Subject: Re: [Avaiga/taipy] Make a slider in float type with a particular step value (Issue #639)
I see no screenshot.
image.png (view on web)https://github.com/Avaiga/taipy/assets/98709993/ac1d42f9-356d-4a0b-a076-c9901764e4fa
I think you are using your emails to send these screenshots, which won't work. Try to go on GitHub directly.
—
Reply to this email directly, view it on GitHubhttps://github.com/Avaiga/taipy/issues/639#issuecomment-2176432476, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWDEU5TKT4DK7MICEYTISELZIBJMJAVCNFSM6AAAAABBIBZTR6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZWGQZTENBXGY.
You are receiving this because you commented.Message ID: @.***>

Issue created on github.
step function in slider not working #1428
Sent from Outlookhttp://aka.ms/weboutlook
From: Florian Jacta @.>
Sent: Tuesday, June 18, 2024 9:20 PM
To: Avaiga/taipy @.>
Cc: pkinani @.>; Comment @.>
Subject: Re: [Avaiga/taipy] Make a slider in float type with a particular step value (Issue #639)
I see no screenshot.
image.png (view on web)https://github.com/Avaiga/taipy/assets/98709993/ac1d42f9-356d-4a0b-a076-c9901764e4fa
I think you are using your emails to send these screenshots, which won't work. Try to go on GitHub directly.
—
Reply to this email directly, view it on GitHubhttps://github.com/Avaiga/taipy/issues/639#issuecomment-2176432476, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWDEU5TKT4DK7MICEYTISELZIBJMJAVCNFSM6AAAAABBIBZTR6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZWGQZTENBXGY.
You are receiving this because you commented.Message ID<EMAIL_ADDRESS>


[4.0] Error when you use +=/-= on a Vector2's component

Godot version
4.0 Dev
System information
MacOS 11.4
Issue description
Error at runtime when you subtract or add a value to a Vector2's component:
Steps to reproduce
var foo : Vector2 = Vector2.ZERO
foo.y += 100 # error at runtime

Minimal reproduction project
No response

4.0 Dev

Please specify the commit hash of the build you're using.

Can reproduce with 56d712686. The error in question seems to be Invalid operands 'Nil' and 'int' in operator '+'. Curiously, this only appears when the : Vector2 is used, and removing that part removes the error.

I can confirm this bug also, occurst whith me using Vector3 too!
version: v4.0.dev.custom_build [cb4e42155]

Can confirm too, here is the minimal reproduction project that missing in the description:
Test.zip


Fail to import ESM dependencies in config file

Describe the bug
Related to #1166 - this time with a reproduction.
Given the following vite.config.js file:
import { defineConfig } from "vite";
import preact from "@preact/preset-vite";
import grayMatter from "gray-matter";
import remarkParse from "remark-parse";
import remarkStringify from "remark-stringify";
import remarkToRehype from "remark-rehype";
import rehypeRaw from "rehype-raw";
import { unified } from "unified";
import toJsx from "@mapbox/hast-util-to-jsx";

export default defineConfig({
  plugins: [
    {
      name: "markdown",
      async transform(code, id) {
        if (id.match(/\.md$/)) {
          const { content: markdown, data: frontmatter } = grayMatter(code);
          const processor = unified()
            .use(remarkParse)
            .use(remarkStringify)
            .use(remarkToRehype, { allowDangerousHtml: true })
            .use(rehypeRaw)
            .use(function stringifyToJsx() {
              this.Compiler = (tree) => toJsx(tree);
            });
          const vfile = await processor.process(markdown);
          console.log({ frontmatter, code: vfile.value });
          return { code: vfile.value };
        }
      }
    },
    preact
  ]
});

results in [ERR_REQUIRE_ESM]: Must use import to load ES Module error, as at least one of the imported packages (here: unified) is an ESM package.
I'm not sure why that happens, but the reasoning in #1166 seems understandable. Looking at that issue, it's supposed to be fixed in 2.x, but it seems like it isn't.
Reproduction
https://codesandbox.io/s/vite-config-esm-problem-mlill
System Info
Taken from the reproduction codesandbox

  System:
    OS: Linux 5.4 Debian GNU/Linux 10 (buster) 10 (buster)
    CPU: (12) x64 Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz
    Memory: 800.55 MB / 62.73 GB
    Container: Yes
    Shell: 5.0.3 - /bin/bash
  Binaries:
    Node: 14.16.1 - ~/.nvm/versions/node/v14.16.1/bin/node
    Yarn: 1.22.10 - ~/.nvm/versions/node/v14.16.1/bin/yarn
    npm: 6.14.12 - ~/.nvm/versions/node/v14.16.1/bin/npm
  npmPackages:
    vite: ^2.4.4 => 2.4.4

Used Package Manager
yarn
Logs
failed to load config from /sandbox/vite.config.js
error when starting dev server:
Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /sandbox/node_modules/unified/index.js
require() of ES modules is not supported.
require() of /sandbox/node_modules/unified/index.js from /sandbox/vite.config.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename index.js to end in .cjs, change the requiring code to use import(),or remove "type": "module" from /sandbox/node_modules/unified/package.json.

    at Module._extensions..js (internal/modules/cjs/loader.js:1080:13)
    at Object.require.extensions.<computed> [as .js] (/sandbox/node_modules/vite/dist/node/chunks/dep-c1a9de64.js:75583:13)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (/sandbox/vite.config.js:36:33)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.require.extensions.<computed> [as .js] (/sandbox/node_modules/vite/dist/node/chunks/dep-c1a9de64.js:75580:20)
    at Module.load (internal/modules/cjs/loader.js:928:32)
error Command failed with exit code 1.

Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.

more info on unified package: https://github.com/vitejs/vite/issues/4113#issuecomment-883557135

@dominikg the linked issue and further ones linked to it don't have the ERR_REQUIRE_ESM as far as I can see, even though it might be the same underlying problem.

It's kinda tricky.
The vite.config.js in this project is not an actual ES module. It will be compiled to CJS by esbuild.
To use it as an actual ES module, you'll need to rename it to vite.config.mjs or add type: "module" to the project package.json.
Note that, in that case, you might encounter some other issues due to Node.js ESM-CJS interop restrictions.

It's not a bug, though.

@sodatea Did you try any one of your solutions in the codesandbox?

renaming to vite.config.mjs and running with --config vite.config.mjs resolts in exactly the same error
using "type": "module", the error doesn't happen because according to vite config, the config file is not pre-processed in this case. However, the page of a this very simple vite project stays empty and doesn't render the react components.

Will open another bug with that in this case.
If vite could prevent this without having to use "type": "module", it's a bug in my book.
What about #4113 #3024 sveltejs/kit#1961?Are they related?

Anyways, thanks for having a look 👍🏻
I'll dig deeper into my problems with setting "type": "module" next!

Did you try any one of your solutions in the codesandbox?

The config in CodeSandbox seems to be different than the one you described in the issue.

renaming to vite.config.mjs and running with --config vite.config.mjs resolts in exactly the same error

Don't use --config vite.config.mjs, vite.config.mjs can be picked up automatically.
This can be considered a small bug of Vite. It currently only recognizes .mjs or .ts extensions of the default config file, but failed to process those passed by --config.

the page of a this very simple vite project stays empty and doesn't render the react components.

2 problems here:

The preact preset should be called as a function per their documentation: https://github.com/preactjs/preset-vite#installation
As said, when using real ES modules as the config file, you may encounter Node.js ESM-CJS interop issues.
The preset was recognized by Node.js as a CJS module (which their main field points to).
Unlike esbuild, Node.js doesn't have special treatment for the __esModule field in the CJS exports. So, you have to call preact.default() instead.

That is,
// vite.config.mjs
import { defineConfig } from "vite";
import preact from "@preact/preset-vite";

export default defineConfig({
  plugins: [preact.default()]
});

@sodatea thanks! ❤

This can be considered a small bug of Vite. It currently only recognizes .mjs or .ts extensions of the default config file, but failed to process those passed by --config

Is there an issue tracking this? I'm currently using multiple config files to get around an issue with the --ssr flag...
https://github.com/bensmithett/tropical/blob/main/package.json#L39-L40
https://github.com/bensmithett/tropical/blob/main/vite.config.server.js#L13-L15
...but I don't think I can update to a dependency (rehype-slug) to its latest ESM-only version until I can pass an .mjs file to --config.


Use the reference code to determine which LoadGen API is mandatory?

Right now I don't see the following 2 LoadGen API in the reference code:

ReportLatencyResults()
UnloadSamplesFromRam()

Can I assume they are not needed for the submission?
@briandersn @tjablin @guschmue

In our implementation LoadSamplesFromRam unloads all prior LoadSamplesFromRam and LoadSamplesFromRam is a no-op. I think this is allowed. I think implementing ReportLatencyResults is allowed.

@tjablin I'm sure people can use all the APIs which loadgen provides. The question is that if we can use the reference implementation to determine which loadgen APIs are mandatory in the submissions.

For the two APIs you mention, I think it is acceptable to implement them as no-ops.

we register and implement UnloadSamplesFromRam but wipe the current samples in LoadSamplesFromRam as well so we don't care if it gets called or not.
If one does something wrong with this the accuracy numbers will be wrong.

WG recommends that submitter can implement or not implement ReportLatencyResults and UnloadSamplesFromRam at their discretion.


Include independent variables and data dimension sizes in the gpufit interface

Both could already be included in the user info. Is it really better to have that as separate parameters? May make the single function call C interface very lengthy.

What I actually mean is that maybe we need a better idea what the user info is for. If we follow the suggestion of this issue, we will nowhere use the user info anymore. This might be an indication that it is not very useful right now.


PopupDialog with bottom margin to stay high on the screen

How do I make PopupDialog appear taller on the screen? (not centralized)
I already tried to adjust the marginBottom in the Styles, but it did not work.
Thank you very much,

I've already found the solution. I was setting marginBottom: 100 and it remained centralized. I moved to 200 and stayed where I wanted. It was just increasing the marginBottom.
Thank you.


PUBDEV-5572 Improve Confusion Matrix UI

@wendycwong can you please also take a look?

I checked the math for precision and recall and they are correct.
For our m class classifier, cm.data will be of size m by m.  Then cm.data[a][b] denotes the output of our classifier as class b while the actual response belongs to class a.

Thank you @wendycwong and @michalkurka


Allow more customization

Checklist

[x] I've tested my changes.
[x] I've read the Contribution Guidelines.
[x] I've updated the documentation if necessary.

Motivation and Context

I wanted to customize the BulletinBoard a bit more, because the app I am building uses a dark theme.
Description

New customization options:

Set background color for BulletinManager
Set borderColor and borderWidth for Action & AlternativeButtons
Set ActivityIndicatior color

Thank you very much for this improvement 🚀


[#343]fix:workflow diagram canvas width issue

Workflow diagram canvas width issue & Updated orkes-workflow-visualizer version to 1.0.1
Pull Request type

[x] Bugfix
[ ] Feature
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] WHOSUSING.md
[ ] Other (please describe):

NOTE: Please remember to run ./gradlew spotlessApply to fix any format violations.
Changes in this PR
Describe the new behavior from this PR, and why it's needed
Addressed Issue #343

[x] Updated the orkes-workflow-visualizer version to 1.0.1 (which have the patch for canvas width issue)
[x] Passing maxWidthOverride param to WorkflowVisualizer (this will make the maximum width of the canvas to the layout width)

Demo

Alternatives considered
Describe alternative implementation you have considered

It is still not fully scrollable:

Tested locally this works


[snl] if %% missing, error is pointed to the wrong line (confusing)

lines:
program editSseq
#include <seq_release.h>
ss ss3
{
    state idle
    {
        when (pvConnectCount(true) != pvAssignCount(true)){
        } state idle
    }
}

tree-sitter-message:
$ tree-sitter parse --stat -- quiet $file
(source_file [0, 0] - [10, 0]
  (ERROR [0, 0] - [0, 16]
    (identifier [0, 8] - [0, 16]))
  (preproc_include [1, 0] - [2, 0]
    path: (system_lib_string [1, 9] - [1, 24]))
  (ERROR [2, 0] - [9, 1]
    (line_number [2, 5] - [2, 6])
    (ERROR [4, 10] - [4, 14])
    (ERROR [6, 14] - [6, 28])
    (true [6, 29] - [6, 33])
    (ERROR [6, 38] - [6, 41])
    (ERROR [6, 43] - [6, 51])
    (true [6, 52] - [6, 56])
    (ERROR [7, 16] - [7, 20])))
editSseq.st	0 ms	(ERROR [0, 0] - [0, 16])
Total parses: 1; successful parses: 0; failed parses: 1; success percentage: 0.00%

fix:
program editSseq
%%#include <seq_release.h>
ss ss3
{
    state idle
    {
        when (pvConnectCount(true) != pvAssignCount(true)){
        } state idle
    }
}

the error indicates the lines 0 but the issue is on line 1, "%%" is missing. It is possible to have a better message for this case. It took me some time to understand that the issue was the missing %%

Unfortunately, for this parser it's really hard to control error messages, because of the somewhat magical error recovery needed to be used by text editors.


local video does not appear in basic example

I'm trying to install licode in a cluster(amazon ubuntu boxes). The topology of cluster is as follow -
box 1 - Nuve + mongodb + rabbitmq + basic examples
box 2- ErizoController1
box3 -  ErizoController2
But the problem is, whenever I run basic examples test app, I'm not able to see local video.
From logs, it seems that controllers are well integrated with the rabbitmq.
here is the url for the reference - http://<IP_ADDRESS>:3001/connection_test.html

Hi @shaktsin ,
I'm trying to access the url but I can't even load it, I keep getting the connection refused. Is the service down?

Please try again. Server was down at that time.

Are you working on Chrome? Since last version of the web browser, you have to access via https, it won't work any other way. If that's the case, you have to activate the option in the licode_config.js file.

I think the url is not working.   if you want to test the url as insecure origin on mac os, try following command.
sudo ./Google\ Chrome.app/Contents/MacOS/Google\ Chrome --unsafely-treat-insecure-origin-as-secure=http://.179.137.53:3001 --user-data-dir=/Users/ {user account} /Documents/profile

Hi mosfet1kg ,
I fear that the url in your command was not correct. Although, service is up. I tried to open service in chrome with flag unsafely-treat-insecure-origin-as-secure on, but the result is same.
@nachoaguadoc
Yes I am working on Chrome. Can you please provide me some pointers to activate https option in licode_config.js?

I tried to test the url by using the cmd I said. But it is not working... Is it properly installed without errors?

Give it a try!
sudo ./Google\ Chrome.app/Contents/MacOS/Google\ Chrome --unsafely-treat-insecure-origin-as-secure=http://<IP_ADDRESS>:3001 --user-data-dir=/Users/ {user account} /Documents/profile
I hope it is properly installed, as I don't see any error anywhere in the logs.

Compare the logs with following url
https://<IP_ADDRESS>:3001/

Thanks @nachoaguadoc and @mosfet1kg !
Issue was with https. I opened service with https, and got it working.


PHP Fatal error:  Allowed memory size of XXX bytes exhausted

Hello.
When i scan some source at my host i get 2 times PHP Fatal error
at 128MB memory limit:
PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes) in /xxx/PhpCodeFixer.php on line 63
at 256MB memory limit:
PHP Fatal error:  Allowed memory size of 268435456 bytes exhausted (tried to allocate 524288 bytes) in /xxx/PhpCodeFixer.php on line 40
after i set memory limit for php to 512MB i not get this errors.

[ ] Do some tests with large php files

I'll look if I could add some tweaks to improve memory consumption.

Can you tell what script are you checking?

i check osTciket master branch https://github.com/osTicket/osTicket-1.8

i use php 5.6.13

Ok, I've updated phpcf and added option --max-size with default value 1mb. This option sets what file is considered too big and should be skipped. You can use mb, kb and gb suffixes in this option to set another size limit.
For example, you can increase your memory_limit option in php config and then increase file size limit like this:
php bin/phpcf --max-size 1gb ../osTicket

@infectormp, now try to check your script again and write down the results.

Work fine. Thank you.

877Kb file get out of memory Allowed memory size of 134217728 bytes exhausted (tried to allocate 72 bytes) in /xxx/PhpCodeFixer.php on line 12
maybe need set default size to 512Kb

btw, php 7 not have this issue. Peak memory usage: 69.315 MB @ 877 Kb file.


Blog Navbar

Here is what I have for the blog nav bar.  I don't have the search icon, and although I have entered the same font in css, it seems to be different.

@jmarchwinski can you move your changes to the blog repo? This one is for the landing page. Thanks 😄


Multiple queues on same bucket

A naive extention of the AWS working example for using the extended library did not show any problems when having multiple queues use the same S3 bucket. To have the queues use different buckets they would need to be created with a different client configuration that ties to the different buckets then.

👍


Redesign/Simplify/Document FieldComputation class

Summarized: improve design/documentation of the FieldComputation class and simplify the code of the FieldComputation class. Moreover the Field class is better documented
Changes included:

All margins from now on are all outwards (no combinations of outwards and inwards margins).
No more extraction of x and y coordinates of a vector do additions on them and recreate the vector, but directly adding a vector to another vector.
Additional documentation to the Field class which explains some invariants on the Field class (things that should hold for the Field values).
Added some additional Field vectors in the Field class.
Large simplification of the code in the getBlockadesMappedToGoal() function and a small simplification of the lineIntersectionWithDefenceArea() function.
Removed code clones in the FieldComputation class from the getDefenseArea() and getGoalArea(). The opposite area is no longer computed if it is not returned.
A lot of documentation added to the FieldComputation class.
Removed useless comments and added comments to non self-explanatory code in the FieldComputation class.
Used the NEGLIGIBLE_LENGTH constant for float comparisons (if smaller than NEGLIGIBLE_LENGTH then they are considered equal).

This is a good read on documentation:
https://medium.com/@andrewgoldis/how-to-document-source-code-responsibly-2b2f303aa525

* There is far too much documentation at some places. It makes classes super long and it makes code less readable. Shorten your comments and improve the function names instead.

* Standardizing the margins is a good idea. But I remember we had a LOT of nasty problems with them last year. Especially problems with margins are basically impossible to see (except when there is an autoref). Because of that we made a lot of tests for the field. Including tests for field margins, pointIsInField, pointIsInDefenceArea, but also the getVisiblePartsOfGoal and Blockade functions. I would like to see those tests back.

The guidelines

This is a good read on documentation:
https://medium.com/@andrewgoldis/how-to-document-source-code-responsibly-2b2f303aa525

I added documentation to everything that might be misunderstood or misinterpreted

This is a good read on documentation:
https://medium.com/@andrewgoldis/how-to-document-source-code-responsibly-2b2f303aa525

Regarding documentation I apply the following guidelines:

If you pick a random Software Developer from the street and you do not explain anything about the code then he/she should understand the code using only the code, documentation and comments.
Everything that can be misunderstood/misinterpreted should be documented.

No. There are still no tests, and considering what you changed those tests are really necessary.
Besides I still think there are far too much comments. They annoy me a lot, since I always search on function name. But that is obviously very subjective. I'd like to hear more opinions on this. I do believe that the kind of documentation you make belongs in a readme or a wiki, but not in the code.
Concluding: fix tests and i'll let the others decide on the comments.

No. There are still no tests, and considering what you changed those tests are really necessary.
Besides I still think there are far too much comments. They annoy me a lot, since I always search on function name. And I believe if you need so much comments than there is a problem with your naming or structure. But that is obviously very subjective. I'd like to hear more opinions on this. I do believe that the kind of documentation you make belongs in a readme or a wiki, but not in the code.
Concluding: fix tests and i'll let the others decide on the comments.

I will discuss with Jesse how important test are and whether it is more important that documenting/simplifying/redesigning the DefencePositionCoach

I agree with @rolfvdhulst @mrlukasbos and @Yuhanun that there is too much documentation. A lot of it is redundant because it is self-explanatory to a large extent.

I read all the feedback you gave me and made the following decisions:

I agree that test cases regarding the Field & FieldComputation class should be added before merging this pull request.
I agree that returning an optional instead of just a value is better. However this will be left to do for a later pull request. Otherwise this pull request gets way to big.
Regarding a lot of @Yuhanun comments I do not solve problems outside the Field and FieldComputation class that were already present and were only partially solved.
Regarding @Yuhanun comments about the FIeld and FieldComputation classes. I agree with almost all of your comments. But you still need to give me your reasoning why a nullptr should be replaced by an optional. If you give me your reasons then I will most likely quickly be convinced.
I do not agree with @mrlukasbos and @RobotJesse that there are too much variables in the Field class. In the past I proposed the idea of using maps instead, but unfortunately you did not agree with me. Also I do not agree with computation of these variables outside the Field class, because this is what currently happens and what causes a lot of code cloning problems. From my point of view every interesting location, line or value about the Field should be retrievable from the Field class.
I agree with @timovdk point that documentation cloning should be avoided and I agree with @RobotJesse  that some comments are still not clear and should therefore be improved. However I do not agree that there is too much documentation, because:

I have never encountered a project where there was too much documentation. Shortage of documentation was almost always the problem.
In Dutch we always say: "Goed voorbeeld doet volgen." (English translation: "Good example will follow"). By writing a lot of documentation I encourage others and future teams to also properly document their code.
An old programming teacher always said that every (private/public) global variable needs at least a comment that explains it. I personally strongly agree with them especially for the Field class, because these globals are not as clear as they seem to be.
The team switches every year, so knowledge will be lost every year. This means that the value of documentation is even higher.
A lot of these documentation/comments is added, because I did not understand these things at first sight and a lot of code makes assumptions about these variables. For example that the start of every horizontal field line is the left most point of this field line.
Being consistent  is important. For example isPointInField is a very clear function, however it is a public function which therefore needs documentation according to our unwritten rules.

Everything should be improved by now


⚠ SceneTime has degraded performance

In 715b9f5, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1120 ms

Resolved: SceneTime performance has improved in c47271a after 6 minutes.


Unable to add translations to Analyser and AlertForm

There is text in the Analyzer component that I'm unable to add translations for.
The text reads:
"Below threshold is larger than above threshold!"
I added translations for that text in translations.json, but there's no change seen.

It also seems that none of the text in the Alerts module is marked for translation (besides layer names):

@wadhwamatic can you provide some instruction on how to reproduce the "Create Alert" modal please?


Question about wasm sub thread

When calling pthread_create() to create a thread, sub thread call native api xxx as below. The module instance from exec env is different with the main thread‘s module instance.
int xxx_native(wasm_exec_env_t exec_env , ...)
{
...
}
The function wasm_exec_env_get_module can get same wasm module, but this function is not exported. Can you add this function to wasm_export.h? Thanks！

@wustwn  we save some user data according to exec env（main thread’s);  but the sub thread create int wasm, the exec env is different with the main thread, we can not get user data

Hi @bxkai,
We just support spreading custom data through all threads in PR #633 , could you please use wasm_runtime_set_custom_data to attach your user data to the module_instance, and then you can use wasm_runtime_get_custom_data in any sub-threads from the instance


Variable substitution changes

Clarify documentation and give a few more examples

thank you for the examples and explanation.


Inter-file links in docs

To generate links from one documentation page to an anchor in another documentation page .

This was solved by PR #37 .


Shadow-dom support - issue #285

Forked from https://github.com/conoremclaughlin/react-onclickoutside
Credit to @newying61 and @conoremclaughlin
Reopening this PR to address this shadow-dom related issue #323
PR was originally closed due to inactivity - #323

Thank you for refiling this.

v6.12.0 released


adding aphrodite.dev + security fix?

Hi!
The backlink is available on the website's footer, and also on the link garden page.
I also included a patch for the README, to avoid the bad behaviour that happens without rel=noopener (page takeover). It won't fix if people leave that out on their own website, but the easy copy/paste won't have this issue anymore at least.

Thanks for the fix to the link snippet :)
Nice website! I've visited it a few times in the past, welcome to the webring.


ShotDescriptor has no sequence number value

ShotDescriptor only provides frame numbers and the IDs of the shot and video, but not the 'number' of the shot inside the multimediaobject which I need to sort the list I get from the ShotLookup.

As soon as the new ShotLookup classes are available this should be updated in the ArtUtil.sortBySequenceNumber() function. Until then, it's done by sorting with segmentId

see commit https://github.com/silvanheller/cineast/commit/7254c51d850bdd3d7332ad2316746cbda5c8617b
sorting is now done with the SegmentDescriptorComparator, there the update needs to be done after merging.

With fcb450127c790d31cd7749f16137a86ebf47b352 we merged the new Lookups from the main repo. SegmentDescriptorComparator is correct, the getShotId() method just returns the segmentID.

Why is segmentId a String, I thought it should a number as then it's clear that it is a number @lucaro ?

the comparator is now updated in https://github.com/silvanheller/cineast/commit/444d1c7bfb238dde7afa53818599ea00c134e613


🐞 Dagger CLI does not have a way to pass with-exec arguments containing commas

What is the issue?
discord: https://discord.com/channels/707636530424053791/1252253912405381141/1252253912405381141
Hi!
How can I supply a command to a dagger-cli that would accept arguments containing a comma? Is there any syntax to escape commas from parsing?
cmd="trivy fs --dependency-tree --scanners vuln,misconfig,secret --severity,UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL --output trivy-report.out -f table --exit-code 7 ./"

dagger -m github.com/shykes/daggerverse/wolfi call container \
  from --address aquasec/trivy \
  with-exec --skip-entrypoint --args sh,-c,"${cmd}"

The --scanners and --severity values are split using comma as a delimiter.
Error: response from query: input: container.import.from.withExec.sync resolve: process "sh -c trivy fs --dependency-tree --scanners vuln misconfig secret --severity UNKNOWN LOW MEDIUM HIGH CRITICAL --output trivy-report.out -f table --exit-code 7 ./" did not complete successfully: exit code: 1

Dagger version
v0.11.6
Steps to reproduce
See "What is the issue"
Log output
No response

cc @helderco might be an edge-case of the []string parsing in the CLI. Not sure if we ever contemplated cases like --args "foo,bar,'baz,qux'" or something equivalent :pray:

We could switch from a StringSlice to a StringArray, I'll brush up on the differences and if it makes sense to make that change for all []string types.

Reference:

https://github.com/spf13/pflag/issues/89

I think the issue there is that with StringArray you use multiple occurrences of the flag:
dagger -m github.com/shykes/daggerverse/wolfi call container \
  from --address aquasec/trivy \
  with-exec --skip-entrypoint --args sh --args -c \
  --args "trivy fs --dependency-tree --scanners vuln,misconfig,secret --severity,UNKNOWN,LOW,MEDIUM,HIGH,CRITICAL --output trivy-report.out -f table --exit-code 7 ./"

It fixes this issue because it doesn't use CSV but for simple cases it's more verbose because of it. It's that that we can choose one vs the other for different types of arguments. We would have to ditch CSV for all lists basically.


crypto/x509: TestSystemRoots flaky & slow in non-cgo case

Please answer these questions before submitting your issue. Thanks!
Using MacBook Pro  macOS 10.12.1
What version of Go are you using (go version)?
go1.7.4
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH=""
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/pb/vn9226r53sscpljzr0g3yfw40000gn/T/go-build062460274=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
What did you do?
Compiling tip (80acfe950fce409477b9fae097696701a9ff66e3)
Using 1.7.4 standard install at /usr/local/go
$ printenv | grep ^GO
GOROOT_BOOTSTRAP=/usr/local/go
$ cd golang/go/src
$ ./all.bash
Pats-MBP:src path$ ./all.bash
Building Go bootstrap tool.
cmd/dist
Building Go toolchain using /usr/local/go.
bootstrap/cmd/internal/dwarf
bootstrap/cmd/internal/sys
bootstrap/cmd/asm/internal/flags
bootstrap/cmd/internal/bio
bootstrap/cmd/compile/internal/syntax
bootstrap/cmd/internal/gcprog
bootstrap/cmd/internal/obj
bootstrap/math/big
bootstrap/debug/pe
bootstrap/cmd/internal/obj/arm
bootstrap/cmd/internal/obj/arm64
bootstrap/cmd/internal/obj/mips
bootstrap/cmd/internal/obj/ppc64
bootstrap/cmd/internal/obj/s390x
bootstrap/cmd/internal/obj/x86
bootstrap/cmd/asm/internal/lex
bootstrap/cmd/link/internal/ld
bootstrap/cmd/asm/internal/arch
bootstrap/cmd/compile/internal/ssa
bootstrap/cmd/asm/internal/asm
bootstrap/cmd/asm
bootstrap/cmd/link/internal/arm
bootstrap/cmd/link/internal/amd64
bootstrap/cmd/link/internal/arm64
bootstrap/cmd/link/internal/mips
bootstrap/cmd/link/internal/mips64
bootstrap/cmd/link/internal/ppc64
bootstrap/cmd/link/internal/s390x
bootstrap/cmd/link/internal/x86
bootstrap/cmd/link
bootstrap/cmd/compile/internal/gc
bootstrap/cmd/compile/internal/amd64
bootstrap/cmd/compile/internal/arm
bootstrap/cmd/compile/internal/arm64
bootstrap/cmd/compile/internal/mips
bootstrap/cmd/compile/internal/mips64
bootstrap/cmd/compile/internal/ppc64
bootstrap/cmd/compile/internal/s390x
bootstrap/cmd/compile/internal/x86
bootstrap/cmd/compile
Building go_bootstrap for host, darwin/amd64.
runtime/internal/sys
runtime/internal/atomic
runtime
errors
sync/atomic
unicode/utf8
unicode/utf16
unicode
internal/syscall/windows/sysdll
math
internal/race
encoding
sync
syscall
io
internal/singleflight
hash
hash/adler32
bytes
strings
strconv
bufio
path
crypto
encoding/base64
reflect
crypto/sha1
internal/syscall/windows/registry
internal/syscall/windows
time
os
os/signal
encoding/binary
fmt
sort
path/filepath
container/heap
regexp/syntax
io/ioutil
context
debug/dwarf
encoding/json
log
go/token
net/url
compress/flate
text/template/parse
flag
os/exec
go/scanner
go/ast
regexp
compress/zlib
text/template
debug/macho
debug/elf
go/parser
go/doc
go/build
cmd/go
Building packages and commands for darwin/amd64.
runtime/internal/sys
runtime/internal/atomic
runtime
errors
unicode
internal/race
sync/atomic
unicode/utf8
math
sync
container/list
io
syscall
hash
hash/adler32
hash/crc32
strconv
bytes
strings
bufio
path
reflect
text/tabwriter
container/ring
crypto
crypto/subtle
crypto/internal/cipherhw
crypto/cipher
math/rand
crypto/sha512
crypto/aes
crypto/hmac
time
crypto/md5
crypto/rc4
crypto/sha1
crypto/sha256
encoding/base64
internal/nettrace
internal/singleflight
vendor/golang_org/x/crypto/poly1305
vendor/golang_org/x/crypto/curve25519
database/sql/internal
encoding
encoding/ascii85
encoding/base32
unicode/utf16
vendor/golang_org/x/text/transform
hash/crc64
hash/fnv
html
image/color
os
image
image/color/palette
internal/syscall/windows
vendor/golang_org/x/net/route
internal/syscall/windows/registry
internal/syscall/windows/sysdll
runtime/trace
image/internal/imageutil
math/cmplx
image/draw
image/jpeg
os/signal
runtime/race
cmd/compile/internal/test
cmd/vet/internal/whitelist
fmt
encoding/binary
sort
path/filepath
regexp/syntax
cmd/internal/sys
compress/bzip2
io/ioutil
container/heap
crypto/des
encoding/pem
vendor/golang_org/x/crypto/chacha20poly1305/internal/chacha20
runtime/debug
vendor/golang_org/x/crypto/chacha20poly1305
cmd/internal/dwarf
flag
log
debug/dwarf
compress/flate
debug/gosym
cmd/internal/obj
debug/plan9obj
cmd/vendor/golang.org/x/arch/arm/armasm
debug/macho
debug/pe
cmd/vendor/golang.org/x/arch/ppc64/ppc64asm
cmd/vendor/golang.org/x/arch/x86/x86asm
cmd/internal/goobj
compress/zlib
debug/elf
regexp
archive/tar
archive/zip
compress/gzip
compress/lzw
context
math/big
cmd/internal/objfile
encoding/hex
go/token
os/exec
go/scanner
go/ast
cmd/addr2line
database/sql/driver
database/sql
go/parser
go/printer
encoding/csv
encoding/gob
crypto/dsa
crypto/elliptic
encoding/asn1
crypto/rand
cmd/cgo
crypto/rsa
crypto/ecdsa
crypto/x509/pkix
encoding/json
encoding/xml
vendor/golang_org/x/net/http2/hpack
vendor/golang_org/x/net/idna
vendor/golang_org/x/text/unicode/norm
vendor/golang_org/x/text/width
mime
mime/quotedprintable
net/http/internal
net/url
text/template/parse
go/constant
go/format
text/scanner
image/gif
go/types
image/png
text/template
index/suffixarray
runtime/cgo
internal/pprof/profile
go/doc
html/template
go/build
net
testing
internal/trace
internal/testenv
runtime/pprof/internal/protopprof
net/internal/socktest
runtime/pprof
os/user
plugin
go/internal/gccgoimporter
go/internal/gcimporter
testing/internal/testdeps
testing/iotest
testing/quick
cmd/api
go/importer
cmd/internal/obj/arm
cmd/internal/obj/arm64
cmd/internal/obj/mips
cmd/internal/obj/ppc64
cmd/internal/obj/s390x
cmd/internal/obj/x86
cmd/asm/internal/flags
cmd/asm/internal/lex
cmd/internal/bio
cmd/compile/internal/syntax
cmd/internal/gcprog
crypto/x509
vendor/golang_org/x/net/lex/httplex
net/textproto
mime/multipart
log/syslog
net/mail
cmd/asm/internal/arch
cmd/compile/internal/ssa
cmd/asm/internal/asm
cmd/internal/browser
cmd/cover
cmd/asm
cmd/dist
cmd/doc
crypto/tls
cmd/fix
cmd/gofmt
net/http/httptrace
net/http
net/smtp
cmd/link/internal/ld
cmd/nm
cmd/objdump
cmd/pack
cmd/pprof/internal/plugin
cmd/pprof/internal/report
cmd/pprof/internal/svg
cmd/pprof/internal/tempfile
cmd/pprof/internal/commands
cmd/pprof/internal/driver
cmd/pprof/internal/symbolizer
cmd/pprof/internal/symbolz
cmd/vet/internal/cfg
cmd/vet
cmd/link/internal/amd64
expvar
net/http/cgi
net/http/cookiejar
net/http/httptest
net/http/fcgi
net/http/httputil
net/http/pprof
net/rpc
cmd/go
net/rpc/jsonrpc
cmd/link/internal/arm
cmd/link/internal/arm64
cmd/link/internal/mips
cmd/link/internal/mips64
cmd/link/internal/ppc64
cmd/link/internal/s390x
cmd/link/internal/x86
cmd/pprof/internal/fetch
cmd/link
cmd/pprof
cmd/trace
cmd/compile/internal/gc
cmd/compile/internal/amd64
cmd/compile/internal/arm
cmd/compile/internal/arm64
cmd/compile/internal/mips
cmd/compile/internal/mips64
cmd/compile/internal/ppc64
cmd/compile/internal/s390x
cmd/compile/internal/x86
cmd/compile
Testing packages.
ok  	archive/tar	0.027s
ok  	archive/zip	1.271s
ok  	bufio	0.060s
ok  	bytes	0.081s
ok  	compress/bzip2	0.058s
ok  	compress/flate	0.681s
ok  	compress/gzip	0.017s
ok  	compress/lzw	0.011s
ok  	compress/zlib	0.020s
ok  	container/heap	0.011s
ok  	container/list	0.010s
ok  	container/ring	0.022s
ok  	context	1.040s
ok  	crypto/aes	0.033s
ok  	crypto/cipher	0.028s
ok  	crypto/des	0.015s
ok  	crypto/dsa	0.011s
ok  	crypto/ecdsa	0.066s
ok  	crypto/elliptic	0.032s
ok  	crypto/hmac	0.006s
ok  	crypto/md5	0.014s
ok  	crypto/rand	0.028s
ok  	crypto/rc4	0.124s
ok  	crypto/rsa	0.086s
ok  	crypto/sha1	0.028s
ok  	crypto/sha256	0.009s
ok  	crypto/sha512	0.012s
ok  	crypto/subtle	0.010s
ok  	crypto/tls	1.229s
--- FAIL: TestSystemRoots (1.46s)
root_darwin_test.go:32: got 172 roots
root_darwin_test.go:32: got 132 roots
root_darwin_test.go:34: want at least 150 system roots, have 132
FAIL
FAIL	crypto/x509	2.215s
ok  	database/sql	0.087s
ok  	database/sql/driver	0.008s
ok  	debug/dwarf	0.014s
ok  	debug/elf	0.029s
ok  	debug/gosym	0.243s
ok  	debug/macho	0.012s
ok  	debug/pe	0.012s
ok  	debug/plan9obj	0.010s
ok  	encoding/ascii85	0.010s
ok  	encoding/asn1	0.011s
ok  	encoding/base32	0.010s
ok  	encoding/base64	0.009s
ok  	encoding/binary	0.010s
ok  	encoding/csv	0.011s
ok  	encoding/gob	0.043s
ok  	encoding/hex	0.011s
ok  	encoding/json	0.385s
ok  	encoding/pem	0.019s
ok  	encoding/xml	0.016s
ok  	errors	0.009s
ok  	expvar	0.012s
ok  	flag	0.010s
ok  	fmt	0.103s
ok  	go/ast	0.013s
ok  	go/build	0.091s
ok  	go/constant	0.026s
ok  	go/doc	0.045s
ok  	go/format	0.013s
ok  	go/internal/gccgoimporter	0.010s
ok  	go/internal/gcimporter	0.517s
ok  	go/parser	0.035s
ok  	go/printer	0.336s
ok  	go/scanner	0.010s
ok  	go/token	0.026s
ok  	go/types	0.673s
ok  	hash/adler32	0.012s
ok  	hash/crc32	0.012s
ok  	hash/crc64	0.009s
ok  	hash/fnv	0.011s
ok  	html	0.008s
ok  	html/template	0.069s
ok  	image	0.111s
ok  	image/color	0.058s
ok  	image/draw	0.062s
ok  	image/gif	0.074s
ok  	image/jpeg	0.125s
ok  	image/png	0.035s
ok  	index/suffixarray	0.015s
ok  	internal/pprof/profile	0.009s
ok  	internal/singleflight	0.019s
ok  	internal/trace	0.394s
ok  	io	0.031s
ok  	io/ioutil	0.011s
ok  	log	0.012s
ok  	log/syslog	1.253s
ok  	math	0.011s
ok  	math/big	1.534s
ok  	math/cmplx	0.008s
ok  	math/rand	0.054s
ok  	mime	0.012s
ok  	mime/multipart	0.240s
ok  	mime/quotedprintable	0.088s
ok  	net	4.106s
ok  	net/http	5.470s
ok  	net/http/cgi	0.508s
ok  	net/http/cookiejar	0.015s
ok  	net/http/fcgi	0.013s
ok  	net/http/httptest	0.015s
ok  	net/http/httptrace	0.012s
ok  	net/http/httputil	0.033s
ok  	net/http/internal	0.008s
ok  	net/internal/socktest	0.010s
ok  	net/mail	0.011s
ok  	net/rpc	0.023s
ok  	net/rpc/jsonrpc	0.015s
ok  	net/smtp	0.020s
ok  	net/textproto	0.014s
ok  	net/url	0.016s
ok  	os	0.524s
ok  	os/exec	0.434s
ok  	os/signal	4.307s
ok  	os/user	0.009s
ok  	path	0.008s
ok  	path/filepath	0.041s
ok  	reflect	0.049s
ok  	regexp	0.098s
ok  	regexp/syntax	0.226s
ok  	runtime	16.145s
ok  	runtime/debug	0.010s
ok  	runtime/internal/atomic	0.103s
ok  	runtime/internal/sys	0.008s
ok  	runtime/pprof	1.594s
ok  	runtime/pprof/internal/protopprof	0.011s
ok  	runtime/trace	1.615s
ok  	sort	0.063s
ok  	strconv	0.500s
ok  	strings	0.105s
ok  	sync	0.214s
ok  	sync/atomic	0.029s
ok  	syscall	0.079s
ok  	testing	1.469s
ok  	testing/quick	0.091s
ok  	text/scanner	0.012s
ok  	text/tabwriter	0.211s
ok  	text/template	0.408s
ok  	text/template/parse	0.013s
ok  	time	2.434s
ok  	unicode	0.011s
ok  	unicode/utf16	0.009s
ok  	unicode/utf8	0.010s
ok  	vendor/golang_org/x/crypto/chacha20poly1305	0.266s
ok  	vendor/golang_org/x/crypto/chacha20poly1305/internal/chacha20	0.007s
ok  	vendor/golang_org/x/crypto/curve25519	0.023s
ok  	vendor/golang_org/x/crypto/poly1305	0.009s
ok  	vendor/golang_org/x/net/http2/hpack	0.010s
ok  	vendor/golang_org/x/net/idna	0.011s
ok  	vendor/golang_org/x/net/lex/httplex	0.009s
ok  	vendor/golang_org/x/net/route	0.022s
ok  	cmd/addr2line	0.531s
ok  	cmd/api	0.013s
ok  	cmd/asm/internal/asm	0.165s
ok  	cmd/asm/internal/lex	0.012s
ok  	cmd/compile	4.633s
ok  	cmd/compile/internal/gc	8.041s
ok  	cmd/compile/internal/ssa	0.120s
ok  	cmd/compile/internal/syntax	0.013s
ok  	cmd/compile/internal/test	0.009s [no tests to run]
ok  	cmd/cover	0.875s
ok  	cmd/doc	0.026s
ok  	cmd/fix	0.015s
ok  	cmd/go	36.364s
ok  	cmd/gofmt	0.034s
ok  	cmd/internal/goobj	0.008s
ok  	cmd/internal/obj	0.011s
ok  	cmd/internal/obj/arm64	0.008s
ok  	cmd/internal/obj/x86	0.010s
ok  	cmd/link	0.010s
ok  	cmd/nm	0.791s
ok  	cmd/objdump	1.189s
ok  	cmd/pack	1.486s
ok  	cmd/trace	0.014s
ok  	cmd/vendor/golang.org/x/arch/arm/armasm	0.011s
ok  	cmd/vendor/golang.org/x/arch/ppc64/ppc64asm	0.010s
ok  	cmd/vendor/golang.org/x/arch/x86/x86asm	0.209s
ok  	cmd/vet	1.750s
ok  	cmd/vet/internal/cfg	0.009s
2016/12/05 17:19:25 Failed: exit status 1
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
What did you expect to see?
Success
What did you see instead?
ok  	crypto/subtle	0.012s
ok  	crypto/tls	1.389s
--- FAIL: TestSystemRoots (1.28s)
root_darwin_test.go:32: got 172 roots
root_darwin_test.go:32: got 149 roots
root_darwin_test.go:34: want at least 150 system roots, have 149
FAIL
FAIL	crypto/x509	2.081s

Do you have a number of CAs disabled in Keychain Access? I guess we can slightly lower the threshold.

Brand new mac. Nothing disabled in keychain that I can see.
On Mon, Dec 5, 2016 at 5:37 PM Quentin Smith<EMAIL_ADDRESS>wrote:

Do you have a number of CAs disabled in Keychain Access? I guess we can
slightly lower the threshold.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18203#issuecomment-265035094, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAGk3CwwmFbxZvoeU3IlYOeklygZSmnIks5rFLxrgaJpZM4LE6mP
.

@quentinmit, leaving for you to lower the threshold.

I have a similar issue, my case:
root_darwin_test.go:34: want at least 150 system roots, have 145

In my case I've added certificates (to support delve, a debugger), although not necessarily root certificates. I've certainly not removed them. My machine was upgraded to Sierra (10.12) from Mavericks (10.10) so that might explain the difference there.
Has Apple invalidated some certificates recently? It might have something to do with: https://support.apple.com/en-us/HT202858

@bradfitz @rsc
I'm worried that this is not as simple as lowering the threshold, which is why I didn't just send a CL to do that. My Sierra machine reports 169 roots and my El Capitan machine reports 175 roots.
The error report is about the second number printed by TestSystemRoots, which is the number of root CAs reported by the nocgo codepath. That codepath only looks at certificates provided by Apple, so the only way that number should differ should be if the user marks a cert as untrusted. The users here have reported that they didn't disable any certs, so that leaves me scratching my head.

How did you get your Sierra machine to report the number of roots? Is it
the same as my Sierra laptop?
On Wed, Dec 7, 2016 at 11:24 AM Quentin Smith<EMAIL_ADDRESS>wrote:

Reopened #18203 https://github.com/golang/go/issues/18203.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18203#event-885768472, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAH3GITm7aGyMxsiaEou4rjGuJ5PBuc-ks5rFwf1gaJpZM4LE6mP
.

Sorry. too fast on the trigger. I'm happy to report the number of roots
listed on my laptop using the same mechanism you used.
On Wed, Dec 7, 2016 at 11:32 AM Pat Hacker<EMAIL_ADDRESS>wrote:

How did you get your Sierra machine to report the number of roots? Is it
the same as my Sierra laptop?
On Wed, Dec 7, 2016 at 11:24 AM Quentin Smith<EMAIL_ADDRESS>wrote:
Reopened #18203 https://github.com/golang/go/issues/18203.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18203#event-885768472, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AAH3GITm7aGyMxsiaEou4rjGuJ5PBuc-ks5rFwf1gaJpZM4LE6mP
.

@phacker
I'm just referring to the number of roots that Go logs, when you do
go test -v -run TestSystemRoots crypto/x509

Your log above says it found 132 roots. Actually, that's very weird - you also pasted a log that says it found 149 roots in the "What did you see instead?" section.
To eliminate any problems with Go, let's go back to the underlying data. It's stored in /System/Library/Keychains/SystemRootCertificates.keychain, so you should be able to count Apple's roots with:
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | grep BEGIN | wc -l

This does not take into account disabled certificates. On my El Capitan machine, I get 189 certificates in the keychain, but when Go checks if they're trusted it ends up seeing a consistent 175 roots. If you run the "go test" command above, do you get a different number of roots each time?

$ go test -v -run TestSystemRoots crypto/x509
=== RUN   TestSystemRoots
--- PASS: TestSystemRoots (0.95s)
root_darwin_test.go:32: got 172 roots
root_darwin_test.go:32: got 135 roots
PASS
ok   crypto/x509 0.961s
$ security find-certificate -a -p
/System/Library/Keychains/SystemRootCertificates.keychain | grep BEGIN | wc
-l
173
$  go test -v -run TestSystemRoots crypto/x509
=== RUN   TestSystemRoots
--- PASS: TestSystemRoots (0.91s)
root_darwin_test.go:32: got 172 roots
root_darwin_test.go:32: got 148 roots
PASS
ok   crypto/x509 0.925s
$
On Wed, Dec 7, 2016 at 11:49 AM Quentin Smith<EMAIL_ADDRESS>wrote:

@phacker https://github.com/phacker
I'm just referring to the number of roots that Go logs, when you do
go test -v -run TestSystemRoots crypto/x509
Your log above says it found 132 roots. Actually, that's very weird - you
also pasted a log that says it found 149 roots in the "What did you see
instead?" section.
To eliminate any problems with Go, let's go back to the underlying data.
It's stored in /System/Library/Keychains/SystemRootCertificates.keychain,
so you should be able to count Apple's roots with:
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | grep BEGIN | wc -l
This does not take into account disabled certificates. On my El Capitan
machine, I get 189 certificates in the keychain, but when Go checks if
they're trusted it ends up seeing a consistent 175 roots. If you run the
"go test" command above, do you get a different number of roots each time?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18203#issuecomment-265553212, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAH3GGaZce52PEzaAdI1AVjLnXL9N6gxks5rFw24gaJpZM4LE6mP
.

So your machine has 173 roots of unknown trust, and you're seeing a random number of trusted roots less than that every time you run the test.
Well, that's fun. :)
Can you apply this patch and rerun the test to see if we get any useful debugging output?
diff --git a/src/crypto/x509/root_darwin.go b/src/crypto/x509/root_darwin.go
index 59b303d..dff1593 100644
--- a/src/crypto/x509/root_darwin.go
+++ b/src/crypto/x509/root_darwin.go
@@ -93,7 +93,8 @@ func verifyCertWithSystem(block *pem.Block, add func(*Certificate)) {
                cmd = exec.Command("/usr/bin/security", "verify-cert", "-c", "/dev/stdin", "-l")
                cmd.Stdin = bytes.NewReader(data)
        }
-       if cmd.Run() == nil {
+       output, err := cmd.CombinedOutput()
+       if err == nil {
                // Non-zero exit means untrusted
                cert, err := ParseCertificate(block.Bytes)
                if err != nil {
@@ -101,7 +102,9 @@ func verifyCertWithSystem(block *pem.Block, add func(*Certificate)) {
                }

                add(cert)
+               return
        }
+       fmt.Fprintf(os.Stderr, "verify-cert failed: %v\n%s\n", err, output)
 }

$ go test -v -run TestSystemRoots crypto/x509
=== RUN   TestSystemRoots
verify-cert failed: exit status 1
Cert Verify Result: CSSMERR_TP_CERT_EXPIRED
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
Cert Verify Result: CSSMERR_TP_CERT_EXPIRED
verify-cert failed: exit status 1
Cert Verify Result: CSSMERR_TP_CERT_EXPIRED
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
verify-cert failed: exit status 1
SecCertificateCreateFromData: One or more parameters passed to a function
were not valid.
--- PASS: TestSystemRoots (1.02s)
root_darwin_test.go:32: got 172 roots
root_darwin_test.go:32: got 149 roots
PASS
ok   crypto/x509 1.035s
$
On Wed, Dec 7, 2016 at 12:05 PM Quentin Smith<EMAIL_ADDRESS>wrote:

So your machine has 173 roots of unknown trust, and you're seeing a random
number of trusted roots less than that every time you run the test.
Well, that's fun. :)
Can you apply this patch and rerun the test to see if we get any useful
debugging output?
diff --git a/src/crypto/x509/root_darwin.go b/src/crypto/x509/root_darwin.go
index 59b303d..dff1593 100644
--- a/src/crypto/x509/root_darwin.go
+++ b/src/crypto/x509/root_darwin.go
@@ -93,7 +93,8 @@ func verifyCertWithSystem(block *pem.Block, add func(*Certificate)) {
cmd = exec.Command("/usr/bin/security", "verify-cert", "-c", "/dev/stdin", "-l")
cmd.Stdin = bytes.NewReader(data)
}

  if cmd.Run() == nil {

  output, err := cmd.CombinedOutput()

  if err == nil {
          // Non-zero exit means untrusted
          cert, err := ParseCertificate(block.Bytes)
          if err != nil {

@@ -101,7 +102,9 @@ func verifyCertWithSystem(block *pem.Block, add func(*Certificate)) {
}
            add(cert)

          return
  }

  fmt.Fprintf(os.Stderr, "verify-cert failed: %v\n%s\n", err, output)

}
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/18203#issuecomment-265557746, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAH3GH4WU1a-rnGbyNSY3zOItJbsFvxgks5rFxFpgaJpZM4LE6mP
.

@quentinmit, you planning on doing something here?

@bradfitz Good question. I don't know what the next step is on this bug; Apple's error message isn't exactly helpful. We can move to 1.8Maybe though.

@phacker We have another thing we'd like you to try, since you're able to reproduce this. Can you change needsTmpFile() in src/crypto/x509/root_darwin.go to unconditionally "return true" and see if you can reproduce the bug?
I'm afraid I've been completely unable to reproduce this on every Mac I have access to, both Sierra and El Capitan.

Tip currently passes on my mac Sierra.
Tip has changed x509/root_darwin_test.go TestSystemRoots from wanting 150
roots to wanting 100 roots. Changing this back to 150 causes my system to
fail when doing ./all.bash
Changing x509/root_darwin.go needsTmpFiles by adding the line
return true
as the first line of the function causes the build to pass even when
wanting 150 roots.
Pat

@quentinmit, yeah, sounds like the piping to stdin from a bytes.Reader is flaky. Is Apple's verify-cert code open source? I don't know which parts are & aren't. I'm curious if there's a bug in how they read from stdin.

@bradfitz Yeah, it's ostensibly open source. The entry point is at https://opensource.apple.com/source/Security/Security-57740.20.22/SecurityTool/verify_cert.c.auto.html

See https://golang.org/cl/34389 for a new strategy that doesn't take 3.5 seconds to load certs.
/cc @mitchellh (could you test?)

Hi @bradfitz --
Sorry for commenting on a closed issue, but I'm not sure where it would be more appropriate to (I'm not really involved in the golang community). I've seen this issue pop up another place. On Jan 11, the Google Cloud SDK team included a new version of kubectl with the google-cloud-sdk. This new version is compiled with go1.7.4, rather than the previous release that was compiled with go1.7.1.
This combination of kubectl compiled under go1.7.4 + macOS Sierra hits this bug, causing timeouts. I've seen mentions of it https://github.com/kubernetes/helm/issues/1749 and https://kubernetes.slack.com/archives/kubernetes-users/p1484587693022364, as well as encountered it myself. These issues seem to go away when using the version of kubectl compiled with Homebrew that is currently patching in the fix  (https://github.com/Homebrew/homebrew-core/pull/8628).
I'm not sure if there is a plan to release another 1.7.x go version before 1.8 drops next month, but I wanted to let you know that this bug is impacting users out in the wild.
If there is a better way or place to report this, then please let me know (and again my apologies).

A better fix for software distributors is to enable cgo to avoid hitting
this problem.

@cblecker, ugh. Please file a new bug and reference this one. (Comments on closed issues are where action items go to die.) No promises that we'll do a 1.7.5, but if we do, we'll consider it.


Add chinese version of Documentation-Conventions.md

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10435/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10442/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-PR-Builder/10453/
Test PASSed.

alluxio-bot, merge this please

alluxio-bot, cherry-pick this to branch-2.3 please


volkan: add recent videos from vimeo that have not been added to showcase — also add the Enligthning session video

Done.


Update EOF test tracker

🗒 Description
Filling EOF test tracker.
🔗 Related Issues

✅ Checklist

[ ] All: Set appropriate labels for the changes.
[ ] All: Considered squashing commits to improve commit history.
[ ] All: Added an entry to CHANGELOG.md.
[ ] All: Considered updating the online docs in the ./docs/ directory.
[ ] Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
[ ] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[ ] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

@gumb0 I haven't merged this because it's not marked as ready for review, if it is ready just let me know and I can merge right away.

@marioevz Let's merge this, as the first version of container validation cases.


Upgrade msal4j to 1.6.1

Reviewed offline by @yiliuTo for the spring changes.

Did you merge from master into your branch before submitting this PR to the release branch? Its gonna carry a lot of baggage with it.

No I didn't. I just migrated the latest eng/common folder.

Since this is not master - we can always revert back the eng/common changes as needed. Merging this PR to release identity.


corrected get temp dir logic

as per doc, tempfile.tempdir only works if earlier tempfile.gettempdir() is executed. otherwise it sends None . So corrected this in core logic where tempdir is generated for the run.
Let me know if any more info is needed to accept this PR.
Thanks!

Ah, indeed ~ good catch. This is one part of the code that is not yet tested ~ all our current test uses the --base-pipeline-dir flag and therefore skips going into the if block.
For future reference for anyone looking into this PR, here is the relevant documentation.
Anyway, I will merge this soon. Thanks again for the PR.


Enable "empty" or "no value" choice in the column filter

Some fields might be optional in the query which will result in empty cells in the table.
Users might want to filter to only get the resources/rows that have missing values.
Hence, we should be able to filter columns based on cells that are empty.
Acceptance Criteria:

when there are missing values for a property/column, the users can select them through the operator dropdown
selecting the "is empty" operator will display all rows in the table that have an empty cell for that column/property and the count of rows

the list of possible values will include a label "(Empty)" and the count of empty cells
the "(Empty)" value is then selected and the count shown

To investigate: https://stackoverflow.com/questions/35351326/how-to-bucket-empty-and-non-empty-fields-in-nested-aggregation-in-elasticsearch

@adulbrich @nicwells @imsdu @samuel-kerrien @Stafeeva @wwajerowicz Hey team! Can you please add your planning poker estimates with ZenHub