The size of trained data with ConstantLengthDataset ?

          This is a bit a trade-off between training efficiently and potentially corrupting a few examples: if you are limited by the number of examples rather than compute then you might want to avoid this and just have one text per sample in the batch and pad the batch. However, if you have a lot of data the above code is very efficient since there is no padding at all. True, some examples might not have the full context but usually in the long training this doesn't matter much. The strategy above is called packing and common practice when pretraining language models. Hope this helps!

Originally posted by @lvwerra in https://github.com/lvwerra/trl/issues/291#issuecomment-1505045302
Did you pack all dataset with ConstantLengthDataset in Supervised fine-tuning step? Or just using 5000 thousands examples as a "pre-training" method to add stack knowledge to LLaMA, then train most SE data in  rl_training?

We use packing only for the "pretraining" step and we have a dedicated split in the dataset for it: https://huggingface.co/datasets/lvwerra/stack-exchange-paired/tree/main/data
The dataset is quite big and we didn't use the full dataset in any of the steps.

@lvwerra, is there something within Hugging Face that prevents latter subsequences from attending to earlier subsequences when you use packing? If not, I'm a little surprised this works well enough. You might retain efficiency and high precision if you implemented attention masking so that subsequences only attend to tokens within the subsequence within a packed example. Interestingly, someone attempted a whole ICLR paper about this idea: https://openreview.net/forum?id=ZAzSf9pzCm

I have the same question as @ToddMorrill 's.

The main reason is that there is nothing useful in previous sequences to attend to so the model probably learns very easily to not pay attention to previous sequences. Do you have any reason to believe otherwise?

I think these models will use any information available to them and to the extent that two sequences are related, the second sequence might attend to the first.
One experiment we can run to see if this is actually occurring is to look at the attention weights going from one example to another. But I think the more important question is to determine if something bad is occurring as a result of this, such as worse test-time performance or slower or less data-efficient learning. Showing this might involve training pairs of models (with and without packing) and measuring these properties.

to the extent that two sequences are related

In general they are totally unrelated, no? so there is no information in a random sample from the dataset that would be useful for a second dataset. when in doubt you can always run with packing=False and have totally disconnected samples.

If they're two examples drawn from the same dataset it's definitely possible that they have some overlap in the task or subject matter being discussed. And packing=False is a great option if there's ever a real concern, but I'm just looking to have my cake and eat it too - namely to get the throughput gain of packing, while being certain that I'm not cross-contaminating. Thanks for weighing in, @lvwerra.

You could write your own logic that adds an attention mask matrix to masking everything before the EOS token :)


Adding a little helper to check if an element/selector exists

Every time I start a project and after about 3 times writing:
if ( $(".unicorns").length > 0 ) {
    $(".rainbows").show();
}

I get mightly irked and end up writing a $.fn.exists() function so... never again!!!
If it is too simple for the library I understand; but I felt a contribution itch and needed to scratch it. :smile:

Since $ is an array-like object it's recommended that you test it like this: https://github.com/rwaldron/idiomatic.js/#user-content-cond
if ( $('.unicorns').length ) {
  // ...
}

An extra method to accomplish this isn't really necessary.

Since $ is an array-like object it's recommended that you test it like this: https://github.com/rwaldron/idiomatic.js/#user-content-cond
if ( $('.unicorns').length ) {
  // ...
}

An extra method to accomplish this isn't really necessary.

Nah, in jQuery there was .size() too, which at the end got removed.

Nah, in jQuery there was .size() too, which at the end got removed.

Ah yeh thanks James,  I was following the cash code style of evaluating
length of collections :)
Agreed is not necessary,  but nor is anything necessary :P,  just a
question of if it fits in with the ideals of Cash :)
Thanks for the feedback!
Simon
On 2 Jan 2015 00:53, "James Kyle"<EMAIL_ADDRESS>wrote:

Since $ is an array-like object it's recommended that you test it like
this: https://github.com/rwaldron/idiomatic.js/#user-content-cond
if ( $('.unicorns').length ) {
// ...
}
An extra method to accomplish this isn't really necessary.
—
Reply to this email directly or view it on GitHub.


feat: allow users to delete all table rows

Closes carbon-design-system/carbon-components-angular#3006

Hey @eduardmarcinco this was basically the solution :P
But instead of setting all arrays to empty state, you could simplify it by call the data setter.
deleteAllRows() {
		this.data = [];
	}

The point of the issue is to provide a imperative approach to delete the data instead of manually calling this.data = [].

I'll reopen the PR if that's fine with you!

I'll reopen the PR if that's fine with you!

Yep, that's fine. Let me make some quick adjustments to code and the test.


feat(input): input公开Type属性和加个正则

Is there an existing issue for this?

[X] I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.
No response
Describe the solution you'd like
比如 inputnumber 有时候要全数字键盘, 有时候只要电话键盘, 有时候要有小数点的键盘, type 就要暴露出来设置键盘属性才行, 然后电话号码之类输入可以正则限制一下
Additional context
No response

@densen2014 已内置支持
<BootstrapInput type="phone" pattern=".+?" />


Fix hsv2rgb function

There is currently a method called hsv2rgb that lives in /lib/hsv2rgb.js.
It is incomplete and needs to be fixed!
This function takes an array of HSV values and returns the RGB equivalent.
Acceptance Criteria:

Running yarn test <methodName> results in tests passing.
You have written a skeleton method for someone else to work on.
You have written tests surrounding your skeleton method.
Running yarn lint does not print any errors to the console!
Optional: write one or two more tests surrounding the method you are solving to account for potential edge cases.

Please include the skeleton of a new method + an accompanying test for someone else to work on at the time of creating a pull request! A pull request will most likely be denied if it does not contain a skeleton method for someone else to work on! For more information, please read the Contributing Guide.
Thank you so much for your contribution!

I can take this one.

Thanks!

@smehta11  The tests seem to be off on the conversions.
According to https://codebeautify.org/hsv-to-rgb-converter, [120, 1, 1] converts to [255, 0 , 0] , not [0, 255, 0], which is what the test is asking for.

@joshuafbarker Hue is typically given in degrees. However, that converter requires hue to be mapped to [0, 1] if saturation and value are also on that range (which is the norm). Instead of 120 degrees, try 0.333 for the hue (for that specific converter).

Ah... I see now. Thanks for the clarification.


Random runner updates

Summary

Added options to output mask as healpix FITS image.
Removed reading and use of list of all tiles for overlapping region detection

Closes #574
Reviewer Checklist

Reviewers should tick the following boxes before approving and merging the PR.

[x] The PR targets the develop branch
[x] The PR is assigned to the developer
[x] The PR has appropriate labels
[x] The PR is included in appropriate projects and/or milestones
[x] The PR includes a clear description of the proposed changes
[x] If the PR addresses an open issue the description includes "closes #"
[x] The code and documentation style match the current standards
[x] Documentation has been added/updated consistently with the code
[x] All CI tests are passing
[x] API docs have been built and checked at least once (if relevant)
[x] All changed files have been checked and comments provided to the developer
[ ] All of the reviewer's comments have been satisfactorily addressed by the developer

Hey @martinkilbinger can you just need to fix these minor formatting errors, then the CI tests should pass.
______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/modules/mask_package/mask.py:237:12: E275 missing whitespace after keyword

______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/modules/setools_package/setools.py:656:18: E275 missing whitespace after keyword

______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/pipeline/file_io.py:554:24: E275 missing whitespace after keyword

Hey @martinkilbinger can you just need to fix these minor formatting errors, then the CI tests should pass.
______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/modules/mask_package/mask.py:237:12: E275 missing whitespace after keyword

______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/modules/setools_package/setools.py:656:18: E275 missing whitespace after keyword

______________________________ pycodestyle-check _______________________________
/home/runner/work/shapepipe/shapepipe/shapepipe/pipeline/file_io.py:554:24: E275 missing whitespace after keyword

Done, it should pass all tests now.


Timing and conditions to cast a chord

Describe the bug

Random failures with chords casting with no space before them or timing

Check the pic below, green lines when the script behavior is as expected, and red ones when not (chord=es) you can notice the first seven attempts are OK. I know, there is a space before in the first testes, but they were written below normal speed.

Besides this, the restrict "chords while typing" option works fine for a while, then -suddenly- cast the chord. For a while I mean, like 5 min is working fine (full testing typing) and then, a couple of minutes  typing/or switch application, and then, shoot the chord! I set the detection delay at 65, and is fine for a while. Maybe something needs to be clear or resetead at the end of a loop or conditional. (just an idea)

Useful Details

Which settings do you have selected in the ZipChord settings?

If the output is wrong, what is the sequence of keys pressed, the dictionary entry, and what text appears on the screen?

I tried but could not replicate the bug. In combination with the other issue you mentioned with "is:unread" (or something similar), I suspect there might be something causing the automated text output to be detected back in as input. (So when it writes out "El Salvador" it detects the space in the output, even though there are multiple other letters arriving near simultaneously, which would explain the random output.)
I could be wrong about this. To test it, could you please run a modified version of the script and type a few normal keys and then a chord? It will create a "debug.txt" in the same folder as the script and store the detected keypresses. If you type "test " and then the E+S chord, the output in debug.txt should be something like "~t~e~s~t~ ~e~s". Can you let me know if that's what you get, or you get something different?
The modified version is attached: zipchord-debug.zip
And it's also here: https://github.com/psoukie/zipchord/blob/debugging/source/zipchord.ahk. I'm also attaching it in zip file if it's easier.

It's also possible that the latest release works around this problem, because it changes how the chords are sent out. Please let me know what you find -- either with the new release, or what the output is with the debug version above. Thank you!

Hi there! well, firstly, I am sorry for delayed response... I landed at The Big Apple and it is a little crazy here! hehe, a lot of things to do and watch here! but, of course, my relax time is about some hobbies, and this is one of them.
I did the test, so, this is the result: at the debug.txt ~t~e~s~t~e~s~t~e~s~t~w~a~t~e~s~t~2~e~s~t~e~s~t~3~ ~e~s~t~e~s~t~a~w~t~e~s~t~ ~e~a~t~e~s~t~4~w~a~t~e~s~t~ ~a~w the output of this was as expected.
Also, I tried the last version and this is the result: testEl Salvador testGuatemala
I did it with a single word "Guatemala" in order to test that space in the chord response. So, wrong output with last version.
About the capitalization issue (Is:UnrEAD), is not happening at this moment! so, I will be attentive to this or other issues.

This is a great time to visit New York. Enjoy and stay warm!
I have been struggling to replicate this, so I created a more robust debugging feature in the latest pre-released version
If the problem still happens in this version, can you please turn on the "Log this session (debugging)" option on About tab, do a bit of typing that exhibits the error, re-open the ZipChord menu (which stops the debugging and opens the log so you can copy-paste the actual output), and send me the file?
Thank you!

Hello there!! firstly, 🥳 happy New Year!! Secondly, I think this new version scope is fantastic!!!👌
These days are being a little busy. I have been using the last version and replying emails and writing some documents and I realized those suddenly unwanted chords triggered. Today, I had some time to log a session and I did a few chords in order you have a log with more regular typing.
Well, at weekend I will try to snoop into the script and log, in order to do some tests and check if I can implement some of the features I had in my local version. The file with the log is here. I hope it could help to the cause!
Take care!!

Thank you, and happy New Year to you too!
Thank you for the log file -- next time, please also copy the actual text that was produced in the editor, and paste it at the top of the log file. I can then hunt for a discrepancy between the events in the app and the actual output.
(So the log can be enabled for only a short portion, if the bug is something that you can alway reproduce. But I know some bugs appear more random.)
I'm back to my regular work schedule, but I might be able to get a Beta of 2.0 out tonight or tomorrow.

I forgot to say about "implementing some of the features I had in my local version" -- let me know if something general is missing.
For the keyboard languages/layouts, people can now use the Customize button for "Keyboard and language". (And list the keyboard keys under "All keys". The details on this are in the Readme page.)
If there's something else, let me know!

Ok!! I will try to do another test and copy the original text at the header of the log file.
The feature for customize languages and layouts... works like a charm! great one!
On the other hand, about the feature on my former local version, well, I get used to press the "custom modifier key", so meanwhile the version is being debugging I was thinking about get this little thing, but I don't want to lose the new features like Shifting, blank spaces, etc. I tried to use another key as a modifier, but I need the specific PrintScreen key, because it doesn't cast or do anything. I tried to use the reachable Spacebar, but sometimes I get an additional space. The thing is when I am writing in a hurry and I get a chord, well, I get a little nervous! 😬 hahaha
As an adicional comment, there is a green alert when the script is detecting the keys for a chord while typing and not launching it, and it has good success rate!!. Not big deal, but maybe you can enable it just for logging mode? As an example, here is the one with my chord cl = cliente

Thank you and when I have the new test, I will post it here as before.

Thank you for telling me about this! It wasn't easy but a good challenge to figure out how to support special keys, such as PrintScreen.
An example on how to use this feature is here: https://github.com/psoukie/zipchord/issues/90#issuecomment-1371763291
I tested this and included it in the Beta release
To get rid of the green hints, uncheck the "Show hints for chords and shorthands" option on Detection tab.
I am going to close this issue because it mixed a lot of topics, but will check the log, and if you run into the problem with incorrect triggering of chords again, please open a new issue.
Thank you again for helping me make ZipChord better!


AP-1582 Valuable items content and validation

What
Link to story
Description
1/ Change check box text from ‘Any valuable items worth over £500’ to ‘Any valuable items worth £500 or more’.
Reason: our current text does not allow for items worth exactly £500.
2/ Change hint text from ‘Enter the estimated value, minus any sale costs’ to ‘Enter the estimated value’.
Reason: spoke to Dave about this and he agreed that asking for the estimated value is sufficient here, without the added burden of the provider or client having to guess or find out ‘sale costs’.
3/ Validation and Error message if value less than £500 entered:
Estimated value must be £500 or more
User Story
As a provider,
I want to understand what I am being asked for my client’s valuable items and I want to be told if there is an error if I have put an amount that is less than £500
so that I can be as accurate as possible with the means assessment
Checklist

[ ] Tests and rubocop should be passing: bundle exec rake
[ ] Github should not be reporting conflicts; you should have recently run git rebase master.
[ ] There should be no unnecessary whitespace changes. These make diffs harder to read and conflicts more likely.
[ ] The PR description should say what you changed and why, with a link to the JIRA story.
[ ] You should have looked at the diff against master and ensured that nothing unexpected is included in your changes.
[ ] You should have checked that the commit messages say why the change was made.

Looks good Eloise.  This is your first PR isn't it?  Congratulations. many more to come.


chore: add Manifest composing a set of langs/corpora

What's the intended use of this?

What's the intended use of this?

What's the intended use of this?

It's a mirror of the internal type for broader use.

What's the intended use of this?

It's a mirror of the internal type for broader use.


[AutoDiff] Fix subset parameters thunk partial_apply substitutions.

Fix partial_apply substitution map for subset parameters linear map thunk.
The correct substitution map is computed by buildThunkType in
the helper ADContext::getOrCreateSubsetParametersThunkForLinearMap and is
now returned by the helper.
Resolves TF-886.

@swift-ci Please test tensorflow

@swift-ci Please test tensorflow

@swift-ci Please test tensorflow

Linux CI didn't run on the latest NFC commit, but I think it's safe to merge.


burn button doesn't work on firefox

click -> no effect

Missing route for that as well 🤦♂

can we have the following behaviour on pressing it:

burn the key in the wallet
redirect to https://deora.earth/scan

that way no new key is generated in local storage.


LUCENE-10062: Switch to numeric doc values for encoding taxonomy ordinals

Description
In benchmarks, using numeric doc values to store taxonomy facet ordinals shows almost a 400% qps improvement in browse-related taxonomy-based tasks (instead of custom delta-encoding into a binary doc values field). This PR changes the encoding of facet ordinals, while maintaining backwards compatibility with 8.x indexes.
Solution
This change moves to standard numeric doc values for storing taxonomy ordinals.
Tests
No new tests added. Lots of existing test coverage for taxonomy faceting functionality.
NOTE: I will add new testing that ensures backwards compatibility support remains with 8.x. I'm putting this PR out for feedback while doing so.
Checklist
Please review the following and check all that apply:

[x] I have reviewed the guidelines for How to Contribute and my code conforms to the standards described there to the best of my ability.
[x] I have created a Jira issue and added the issue ID to my pull request title.
[x] I have given Lucene maintainers access to contribute to my PR branch. (optional but recommended)
[x] I have developed this patch against the main branch.
[x] I have run ./gradlew check.
[x] I have added tests for my changes.

NOTE: I'm working on additional testing but hoping to get some early feedback on this approach, particularly as backwards-compatibility is concerned. I'll update with more tests and a CHANGES entry.

I wonder if we could make the bw compat logic simpler by creating a SortedNumericDocValues instance that is backed by BinaryDocValues for 8.x indices?

I like this idea. Thanks! I'll give it a shot and see if it makes things a bit cleaner.

OK should be ready for another look now. Thanks for the feedback everyone!

Maybe clarify that full index rebuild means start a new 9.x index and index all your documents. I.e. merely re-indexing all docs into your previous (8.x created) index is not sufficient.

Makes sense. Will tweak the language.

For posterity, I re-ran benchmarks with this most recent change, comparing against branch_9_0 as a baseline (so it includes all the back-compat checks and such). Results still look very good:
                            TaskQPS baseline      StdDevQPS candidate      StdDev                Pct diff p-value
           HighTermDayOfYearSort      127.51     (15.4%)      124.04     (12.1%)   -2.7% ( -26% -   29%) 0.534
                      TermDTSort       96.36     (15.3%)       94.54     (15.1%)   -1.9% ( -28% -   33%) 0.695
               HighTermMonthSort      135.11     (13.3%)      133.31     (16.3%)   -1.3% ( -27% -   32%) 0.778
                          Fuzzy1       63.28      (8.3%)       62.55      (8.6%)   -1.2% ( -16% -   17%) 0.662
                        PKLookup      152.55      (2.1%)      151.14      (1.8%)   -0.9% (  -4% -    3%) 0.139
             MedIntervalsOrdered       82.93      (3.3%)       82.62      (2.4%)   -0.4% (  -5% -    5%) 0.681
       BrowseDayOfYearSSDVFacets       14.45     (14.5%)       14.40     (14.1%)   -0.3% ( -25% -   33%) 0.945
            HighTermTitleBDVSort      106.51     (21.3%)      106.18     (21.6%)   -0.3% ( -35% -   54%) 0.964
                         MedTerm     1238.25      (2.3%)     1235.30      (2.5%)   -0.2% (  -4% -    4%) 0.753
             LowIntervalsOrdered      112.01      (2.2%)      111.75      (1.9%)   -0.2% (  -4% -    4%) 0.724
                         Prefix3      246.62      (2.2%)      246.10      (2.2%)   -0.2% (  -4% -    4%) 0.764
                 MedSloppyPhrase       72.18      (2.9%)       72.06      (3.0%)   -0.2% (  -5% -    5%) 0.861
                   OrHighNotHigh      530.67      (2.9%)      529.98      (2.1%)   -0.1% (  -5% -    5%) 0.873
                    OrHighNotLow      581.58      (3.3%)      581.28      (2.3%)   -0.1% (  -5% -    5%) 0.954
           BrowseMonthSSDVFacets       14.32      (4.5%)       14.32      (4.5%)   -0.0% (  -8% -    9%) 0.977
                       MedPhrase      200.56      (1.9%)      200.54      (1.9%)   -0.0% (  -3% -    3%) 0.992
                    OrHighNotMed      600.02      (2.7%)      599.99      (3.1%)   -0.0% (  -5% -    5%) 0.995
                          IntNRQ       56.03      (3.5%)       56.03      (3.5%)    0.0% (  -6% -    7%) 0.995
            HighIntervalsOrdered        1.86      (2.2%)        1.86      (2.2%)    0.1% (  -4% -    4%) 0.908
                     LowSpanNear       44.66      (1.7%)       44.70      (1.6%)    0.1% (  -3% -    3%) 0.874
                        HighTerm      974.66      (3.1%)      975.67      (2.8%)    0.1% (  -5% -    6%) 0.912
                         Respell       59.10      (1.8%)       59.17      (1.9%)    0.1% (  -3% -    3%) 0.849
                      HighPhrase       30.48      (1.9%)       30.52      (1.8%)    0.1% (  -3% -    3%) 0.819
                       OrHighLow      310.16      (2.6%)      310.61      (2.3%)    0.1% (  -4% -    5%) 0.849
                         LowTerm     1419.43      (2.7%)     1421.64      (2.5%)    0.2% (  -4% -    5%) 0.851
                     MedSpanNear       14.05      (2.3%)       14.08      (2.2%)    0.2% (  -4% -    4%) 0.798
                       LowPhrase      218.41      (4.5%)      218.81      (4.7%)    0.2% (  -8% -    9%) 0.899
                   OrNotHighHigh      531.27      (2.5%)      532.41      (2.1%)    0.2% (  -4% -    4%) 0.768
                 LowSloppyPhrase       23.57      (1.6%)       23.63      (1.8%)    0.2% (  -3% -    3%) 0.649
                HighSloppyPhrase       34.72      (2.0%)       34.83      (2.0%)    0.3% (  -3% -    4%) 0.595
                    OrNotHighLow      786.86      (2.0%)      789.56      (1.9%)    0.3% (  -3% -    4%) 0.580
                    HighSpanNear       32.06      (2.9%)       32.17      (2.6%)    0.3% (  -4% -    5%) 0.690
                      AndHighMed      210.90      (3.2%)      212.04      (3.1%)    0.5% (  -5% -    7%) 0.589
                        Wildcard      106.13      (3.0%)      106.83      (3.3%)    0.7% (  -5% -    7%) 0.505
                       OrHighMed       60.24      (2.3%)       60.69      (2.4%)    0.7% (  -3% -    5%) 0.318
                     AndHighHigh       54.27      (3.3%)       54.70      (3.3%)    0.8% (  -5% -    7%) 0.448
                      AndHighLow      514.75      (2.5%)      518.95      (2.3%)    0.8% (  -3% -    5%) 0.284
                      OrHighHigh       25.30      (2.5%)       25.51      (2.3%)    0.8% (  -3% -    5%) 0.274
                    OrNotHighMed      636.45      (2.8%)      643.57      (2.8%)    1.1% (  -4% -    6%) 0.204
                          Fuzzy2       49.98      (7.1%)       50.55      (7.0%)    1.2% ( -12% -   16%) 0.605
        AndHighHighDayTaxoFacets       23.04      (2.6%)       26.15      (2.8%)   13.5% (   7% -   19%) 0.000
         AndHighMedDayTaxoFacets       44.10      (2.3%)       53.02      (3.1%)   20.2% (  14% -   26%) 0.000
            MedTermDayTaxoFacets       22.03      (3.9%)       31.37      (3.7%)   42.4% (  33% -   51%) 0.000
          OrHighMedDayTaxoFacets        6.94      (3.0%)       10.00      (4.2%)   44.0% (  35% -   52%) 0.000
           BrowseMonthTaxoFacets        2.58      (7.7%)       12.74     (71.1%)  393.7% ( 292% -  511%) 0.000
            BrowseDateTaxoFacets        2.43      (7.2%)       12.46     (78.3%)  412.0% ( 304% -  536%) 0.000
       BrowseDayOfYearTaxoFacets        2.43      (7.2%)       12.48     (78.6%)  412.5% ( 304% -  536%) 0.000

OK, I believe this change is good-to-go now. I think I've addressed all the feedback so far and just did another benchmark run to make sure all the performance benefits are still showing up with the back-compat considerations in place, etc. Please let me know if anyone has additional feedback. Thanks again everyone!

I believe I've addressed all the PR feedback and got an approval from @mikemccand, so I went ahead and merged. Happy to iterate on this further if anyone has additional comments. Thanks again everyone! Somewhat complicated to make this one back-compat, but I think we ended up with a much cleaner solution thanks to all the feedback.

FYI, I'm merging this onto branch_9x as well over in #458 (no need for a review unless someone wants to have a look). I've also updated #264 with the non-back-compat version of this change against main. If someone could have a look at that when you get a chance, I'd appreciate it. It's hopefully a bit easier to reason about since it doesn't require any of the back-compat logic.

I'm getting a test failure that looks caused by this change:
gradlew test --tests TestBackwardsCompatibility.testCreateNewTaxonomy -Dtests.seed=567E100D397BFC2E -Dtests.slow=true -Dtests.badapples=true -Dtests.locale=brx-IN -Dtests.timezone=America/Chicago -Dtests.asserts=true -Dtests.file.encoding=UTF-8

org.apache.lucene.facet.taxonomy.directory.TestBackwardsCompatibility > testCreateNewTaxonomy FAILED
    java.lang.IllegalArgumentException: docs out of order: previous docId=1 current docId=0
        at __randomizedtesting.SeedInfo.seed([567E100D397BFC2E:DE2B08A7CA8D0189]:0)
        at org.apache.lucene.facet.taxonomy.TaxonomyFacetLabels$FacetLabelReader.nextFacetLabel(TaxonomyFacetLabels.java:146)
        at org.apache.lucene.facet.taxonomy.directory.TestBackwardsCompatibility.createNewTaxonomyIndex(TestBackwardsCompatibility.java:228)
        at org.apache.lucene.facet.taxonomy.directory.TestBackwardsCompatibility.testCreateNewTaxonomy(TestBackwardsCompatibility.java:78)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1754)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:942)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:978)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:992)
        at org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:44)
        at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
        at org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:45)
        at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
        at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
        at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:370)
        at com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:819)
        at com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:470)
        at com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:951)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:836)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:887)
        at com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:898)
        at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
        at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
        at org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:38)
        at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
        at com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
        at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
        at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
        at org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:53)
        at org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:43)
        at org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:44)
        at org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:60)
        at org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:47)
        at org.junit.rules.RunRules.evaluate(RunRules.java:20)
        at com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
        at com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:370)
        at com.carrotsearch.randomizedtesting.ThreadLeakControl.lambda$forkTimeoutingTask$0(ThreadLeakControl.java:826)
        at java.base/java.lang.Thread.run(Thread.java:831)

I'm getting a test failure that looks caused by this change

Uh oh. Ok, looking into it. Thanks for letting me know @jpountz

Ok, silly bug in the test case itself. Fix is here #459. Feel free to have a look if you like, but I think it's simple enough that I'll just merge it after the approval checks pass. (I'll make sure this makes it into branch_9x as well). Thanks for finding this (and apologies).

OK, pushed the bug fix onto branch_9_0. @jpountz hopefully no more issues related to this change.

Thank you!


Relationship credential is missing for one side of a relationship

This issue occurs with OrgBook BC.
See entities:

https://orgbook.gov.bc.ca/entity/FM1043109
https://orgbook.gov.bc.ca/entity/LP0847867

The first is a "DBA" for the second.  The issue is that while the relationship is included in the first, it is not included in the second, but should be.
Please investigate to determine if this is a one-off that we can fix, or if it is larger.
Once the issue is understood, and if there is an issue, please check about whether or not the audit should/could catch this.
Thanks!

Hey @ianco -- can you take an initial look at this?
Thanks

On first glance, the company FM1043109 was added April 10 (and posted to OrgBook).
The last update for the owning company LP0847867 was March 26.
Since the two companies are updated separately, and the relationship credential is included in that update, there was nothing triggering the update to LP0847867 when the new DBA was added.  I'll need to dig into the code to see what should have triggered this update since I thought this scenario was handled ...

In the meantime, can you please trigger the processing of LP0847867?
And of course, the big question — are there other instances of this?

In the meantime, can you please trigger the processing of LP0847867?

Yep will do

And of course, the big question — are there other instances of this?

I'll check OrgBook to see if there are any more mis-matched relationships (there should always be 2 credentials for each relationship).  Checking COLIN/LEAR vs OrgBook to see if there are any completely missing relationships will be a bit more complicated ...

Company LP0847867 is re-processed and is showing up correctly.
Couple of issues came up:

When we re-process a company, it affects related companies (not sure exactly, but I had to re-process all DBA's when I reprocessed the parent company)
DBA's are now in LEAR, so when they are originally posted from COLIN and then need to be reprocessed from LEAR the process is a bit more complicated

There are other companies in OrgBook with the same situation (only one relationship credential rather than 2) but the queries are running for a long time due to the number of records, so it's going to take a bit of time to figure out the number of companies impacted.  I suspect it will affect any DBA's that have been created since we switched over to the LEAR database for SP's.

There are other companies in OrgBook with the same situation (only one relationship credential rather than 2) but the queries are running for a long time due to the number of records, so it's going to take a bit of time to figure out the number of companies impacted. I suspect it will affect any DBA's that have been created since we switched over to the LEAR database for SP's.

Is this something we will need to account for when we work through the changes to accommodate the BC Registries database updates?

Is this something we will need to account for when we work through the changes to accommodate the BC Registries database updates?

Yes for sure, handling the relationships was a big issue when we switched the SP's over to LEAR (and is still an issue apparently) so we'll need to pay attention to how these are working in the new data model.

Based on this query in the OrgBook search database, there are quite a few companies in the same (or similar) situation:
select tr1_topic_id, tr1_related_topic_id,
  t1.id, t1.source_id,
  t2.id, t2.source_id
from (
select * from (
select
  tr1.topic_id tr1_topic_id,
  tr1.related_topic_id tr1_related_topic_id,
  tr2.topic_id tr2_topic_id,
  tr2.related_topic_id tr2_related_topic_id
from topic_relationship tr1
full outer join topic_relationship tr2
   on tr1.topic_id = tr2.related_topic_id
  and tr1.related_topic_id = tr2.topic_id
order by tr1.topic_id, tr1.related_topic_id
) as related
where (related.tr2_topic_id is null
   or related.tr2_related_topic_id is null)
) as unrelated,
  topic as t1,
  topic as t2
where t1.id = tr1_topic_id
  and t2.id = tr1_related_topic_id
order by tr1_topic_id desc;

The relationship exists for the DBA but not for the owning company, same as the reported issue with LP0847867.
However some of the records from the above query are the opposite situation (relationship is on the "owning company" side but not on the DBA.
And there were also a few records that looked like "false positives" (when I looked at the company in OrgBook it looked ok).
I suggest we re-queue all these companies for reprocessing, which should pull in any missing relationships.  We'll need to pause the regularly scheduled jobs and manually process these companies @WadeBarnes @swcurran @esune
I can write a query to post the records to the event processor database to queue the companies.
Once we've re-processed the companies I'll re-run the query to see if there are any still outstanding, or what other issues we may have.
In the meantime I'll look into the BC Reg Agent code (and possibly the underlying COLIN and LEAR data) to figure out how we are missing these.
Regarding the audit, we can audit either on the orgook side (baed on the above query) or by comparing to the source data.  I'll have to do the investigation on the agent side first before we can decide ...

Can we assume that the problem stems from a relationship being established by one side of the relationship, and that not triggering the processing of the other side?  For example, in the case in question, the DBA was added with a relationship to the BC Company, but the BC Company was not updated, so the new DBA didn’t show up.  Is that the hole in the process, or do you think it is something more?

Can we assume that the problem stems from a relationship being established by one side of the relationship, and that not triggering the processing of the other side? For example, in the case in question, the DBA was added with a relationship to the BC Company, but the BC Company was not updated, so the new DBA didn’t show up. Is that the hole in the process, or do you think it is something more?

I think there is more than one problem.
For the reported company, I think the "DBA" was added in LEAR, and the relationship was added, but then nothing triggered an update on the "owning company" side of the relationship.  (In COLIN we trigger updates off the event table, and in LEAR off the transaction table.  Just off the top of my head.)  So even though the relationship was added, nothing triggered the BC Reg agent to re-process the "owning company".  (When we manually re-queued the company the relationship was posted so that indicates the underlying data is ok.)
There are a bunch more cases like this (that I'm currently looking into) but there are other scenarios as well.  I haven't had a chance to look into all the scenarios yet.  Possibly something similar the other way (a sole prop is converted to a DBA but we don't get a triggering event to fire off the credentials).
Once I've had a chance to do some investigations it prob makes sense to circle back with the BC Reg team to confirm exactly what are the triggering events that we need to look for to kick off credential processing.

Fixed one issue in BC Reg issuer, once this is promoted into prod I'll do another pass at the OrgBook relationship cleanup and verify if there are any other issues.
In the meantime I'll look into beefing up the audit script.

The changes in https://github.com/bcgov/von-bc-registries-agent/pull/351 have been deployed to test.

Fixed a few problems with the BC Reg issuer (mainly dealing with how data is split between the 2 databases) and one problem with how companies are re-queued for processing.  Added support to the audit job for testing mis-matched relationships (I am still testing the audit updates).
I've gone through OrgBook and done a cleanup.  There are still a few stragglers, which may turn out to be issues with the source data ...

One more issue fixed in BC Reg - https://github.com/bcgov/von-bc-registries-agent/pull/353
This affects a couple of the "missing relationships" in OrgBook, but there are a few others that look like data issues from the source systems (LEAR vs COLIN), I think inconsistent info between the 2 systems, but I need to follow up (I will do this next week!)

All of the known processing issues have been fixed, there are a few stragglers that I think are due to data issues (inconsistencies between COLIN and LEAR) and I'm following up on those

Now fixed.


MINOR: updated documentation where RocksDBStore was being used as the…

… sample class for byte[] versus Bytes examples

ping @guozhangwang @mjsax @vvcephei @ableegoldman for a second review.

retest this please

@cfeduke This PR need to be rebased to resolve merge conflicts. There are also some open comments.

@cfeduke -- just cycling back to this PR -- can you update it to resolve the conflicts and address the review comments?

I've pushed a commit to resolve conflicts and merging now. Thanks @cfeduke for the patch!


Simpler README

[ ] DORA or git charts? (in this PR: DORA)
[ ] Should we keep the gif?
[ ] Should we keep or remove img we do not use anymore?

@tovbinm looking for your input on the questions above ^


JVM: Fix simple object discovery

This PR fixes the random method description of primitive types and simple types.

/gcbrun exp -n dk-test-infra53403 -m vertex_ai_gemini-1-5 -b jvm-small -i


Add Hvendor and Hname as attributes of accept, require and deny elements

Commit related to issue #182. This allows part specific filtering.

Thanks a lot for the PR. Please see my comment. Are you happy to change to Hvendor to xs:string. This is similar to Bvendor where we don't have an fixed list with vendorID numbers.

@jkrech,
I've used the DeviceVendorEnum since the the Hvendor has been defined as DeviceVendorEnum type (see the part element description).
Changing the Hvendor here to xs:string, maybe we should also change the Hvendor attribute definition in the part element (no problem on my side to fix it as well). Or do you think we could keep the two definitions disaligned?

@silviooliva, good catch. I do agree that we should also make it xs:string for the part element:
https://open-cmsis-pack.github.io/Open-CMSIS-Pack-Spec/main/html/pdsc_parts_pg.html#element_part
Could you please do so?

@jkrech,
after further thinking, I'm convinced too it is better, for the same reason you exposed here, to use xs:string for the Hvendor.
I'm going to fix it.


Add RealChute-v<IP_ADDRESS>.ckan

The current version's .version file has a JSON error. This was generated from a netkan with vref removed and ksp_versions hardcoded from the info within the .version file. .netkan left intact so that it picks up the next release without issue.

LGTM, merging with thanks


CID 1368316 & 1368315: Leaks and NULL references

I think this landed recently (TS-5092?), and we have to fix this for 7.1.x. clang-analyzer also detects the NULL pointer reference.
** CID 1368316:  Resource leaks  (RESOURCE_LEAK)
/proxy/http/HttpSM.cc: 5049 in HttpSM::do_http_server_open(bool)()

________________________________________________________________________________________________________
*** CID 1368316:  Resource leaks  (RESOURCE_LEAK)
/proxy/http/HttpSM.cc: 5049 in HttpSM::do_http_server_open(bool)()
5043         int len          = 0;
5044         const char *host = t_state.hdr_info.server_request.host_get(&len);
5045         if (host && len > 0) {
5046           opt.set_sni_servername(host, len);
5047         }
5048
   CID 1368316:  Resource leaks  (RESOURCE_LEAK)
   Failing to save or free storage allocated by "Layout::relative_to(this->t_state.txn_conf->client_cert_filepath, this->t_state.txn_conf->client_cert_filename)" leaks it.
5049         ats_scoped_str clientCert(
5050           ats_strdup((Layout::relative_to(t_state.txn_conf->client_cert_filepath, t_state.txn_conf->client_cert_filename))));
5051         opt.set_client_certname(clientCert);
5052         connect_action_handle = sslNetProcessor.connect_re(this,                                 // state machine
5053                                                            &t_state.current.server->dst_addr.sa, // addr + port
5054                                                            &opt);

** CID 1368315:  Null pointer dereferences  (FORWARD_NULL)
/proxy/http2/Http2ConnectionState.cc: 217 in rcv_headers_frame(Http2ConnectionState &, const Http2Frame &)()

________________________________________________________________________________________________________
*** CID 1368315:  Null pointer dereferences  (FORWARD_NULL)
/proxy/http2/Http2ConnectionState.cc: 217 in rcv_headers_frame(Http2ConnectionState &, const Http2Frame &)()
211         if (!stream) {
212           return error;
213         }
214       }
215
216       // keep track of how many bytes we get in the frame
   CID 1368315:  Null pointer dereferences  (FORWARD_NULL)
   Dereferencing null pointer "stream".
217       stream->request_header_length += payload_length;
218       if (stream->request_header_length > Http2::max_request_header_size) {
219         return Http2Error(HTTP2_ERROR_CLASS_STREAM, HTTP2_ERROR_PROTOCOL_ERROR,
220                           "recv headers payload for headers greater than header length");
221       }
222

https://github.com/apache/trafficserver/pull/1310 should fix CID 1368316

PR #1314 should fix CID 1368315

Both issues have been addressed.


add Apache 2.0 license, VSCode ext. version, installs, downloads and …

…rating badges to README.md for #87
README.md with new badges:

Looks good!


use run_tests_minimal for the new no-std test

:pushpin: Commit c1d10cdbe0df35840e418fee170adf7aa5cc108c has been approved by RalfJung

@bors retry

:hourglass: Testing commit c1d10cdbe0df35840e418fee170adf7aa5cc108c with merge 3b1fc83c13ce492fd43ae04a5efd2c1854a847ec...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 3b1fc83c13ce492fd43ae04a5efd2c1854a847ec to master...


[ANSIENG-4185] Oauth variable change

Description
User facing variable for oauth declaration is changed.
Fixes # (issue)
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration
Checklist:

[ ] Any variable/code changes have been validated to be backwards compatible (doesn't break upgrade)
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If required, I have ensured the changes can be discovered by cp-ansible discovery codebase
[ ] My code follows the style guidelines of this project
[ ] 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
[ ] Any dependent changes have been merged and published in downstream modules

Thanks for the change.
I think it would be good to add some validation on the auth_mode value to fail fast.

should we add a validation for the only 4 possible values for this var? Other than that we have added one validation here

Thanks for the change.
I think it would be good to add some validation on the auth_mode value to fail fast.

Added some more validations regarding oauth & ldap configs


Fixed typo in search, search optimization

Changes Processs to Processes.
Moved process search to tstats.

Thanks for creating a PR with the fix! @zelienka


How to change the url in onEnter?

like react-router's onEnter,  you can have 'replace'
how to achieve that in this project?

@L-x-C The project is using react-router :)
Documentation: https://react-router.now.sh/


React native feature

I add the option to convert svg file to react-native component. It will import the alternative (the title case form) to svg, path, use, g,.. from the library react-native-svg and change the output using those imported dependencies.
For example:

Sorry for messy commit messages, I have rebased to edit them but it turnt out to be in a diffrent branch.

Any chance this could be re-deployed? It seems it failed due to a review request being missed. This would be a major improvement to my workflow. @balajmarius

Any chance this could be re-deployed? It seems it failed due to a review request being missed. This would be a major improvement to my workflow. @balajmarius

yes the react native feature did not pass a test of it, although I have updated the test but but the run tests are checked out from master branch 😢


print in shaders :)

This is madness but could work.
draw twice, once normally and once for debug. we use varjo
to strip down the shader so it removes all parts of
the shader that don't impact the 'printed'
values. This would avoid monkeying with the user's
fbos (which I think is CEPL breaking it's promise
of less magic) whilst still making something fairly
fast.
we render the results to an fbo and pull-g the texture to extract the things to print.
lunacy..may work though.
LOADS of details to work out though

I am a little concerned about hard-to-track side effects of highly modified shaders... Getting output may for instance require running code that steps on some texture (now, twice)...  On the other hand, you know better what's going on in there.
I think a more obvious approach of having a debug fbo may be easier to work with...  Even if you (maybe) entirely hide it...  Debug mode limitations are accepted by most programmers...

Had a bit of a look at renderdoc https://github.com/baldurk/renderdoc and a chat with folks at work.
Approach
One way we can do this is the following:
We add a macro called peek, you use it like this: (peek "worldPos" (* model->world-mat4 pos))
When a pipeline contains peek we compile it twice. Once where we ignore peek but the second time every
peek transforms into:
(let ((tmp ,form))
  (setf out-var-XX ,tmp)
  tmp)

Where XX is some incrementing number. We record the number and type of peeked values.
Then when someone map-gs over the pipeline we actually run it twice. The first time using the normal glsl. The second time with our peek variant and enough FBO attachments to record all the data. This will result in a pipe of textures containing all the peekd values. We can that make an interface to query these results.
As one pipeline can be called many times we would need some 'manager' that holds all the textures/fbos/etc used in recording the debug info. We would also want some kind of with-debug thing you can use to flush all the debug textures at the end of each frame (or write them to disk or whatever).
With this we could implement a kind of pipet tool, pick a color picker but instead of returning colors it shows the peekd values for that texel.
Issues
Technically, this can work and although it's much more basic than things like renderdoc, it's an interface I can make feel really 'at home' in CEPL. The issue that springs to mind is that raw values are often not the most useful thing when you are trying to establish something visual. For example the question 'are my normals fucked' is better answered by lines drawn for every normal in the scene (assuming it's rendering those correctly :p)
I'll muse more on this and see what comes to mind


stat/samplemv: add Halton sampling procedure

While only one kind is implemented now, I know there are a few different scrambling procedures that could be useful at some point (including unscrambled for comparison purposes).
I'm not sure how to write a meaningful test for this. I have tested this by sampling from the distribution, and visually confirming that it "looks" like it was generated from the Halton (i.e. points nicely spread out). I did find a bug in my initial implementation this way (they looked "iid random"). I don't know how to translate this intuition into a robust test that doesn't just re-implement the algorithm.

I've looked at the implementation, but I'm finding it difficult to map between the Go and the R that Owen provides.

Mapping from R to Go

Owen's code allocates a lot of vectors. This loops over the samples to avoid the allocations.
You can see on the bottom of page 25 that each dimension is generated individually, and that b is the n'th prime
Note that the permutation is only generated once for all the samples, hence outside the sample loop
The trickiest thing is that Owen's algorithm makes a list of residuals stored for each matrix. For each sample, it takes

dig := res % b
res = (res-dig)/b

Note that the update to res is the same as res/b in Go, since Go uses integer division. Next, notice that the division is by powers of b, so rather than store successive entries of res/b, we can just compute i/b^n directly, which is the role of div.

Yeah, 4. was the issue for me. The code looks good to me. Do you have any ideas about how to test it yet? A spatial.GlobalMoransI statistic might work.

Yes, I added a proper test.
There is one problem with this algorithm, which is that the first dimension always uses the first prime, which means it's going to have higher variance in it's buckets, and have a different set of points with non-zero location. I wonder if we should permute the primes or using random primes.
Maybe we just leave that to a different HaltonKind, since this is in fact Owen's algorithm

Sorry, I didn't see that the push failed. Updated now
PTAL @kortschak

Thanks for the review.


Subexpressions Not Working -- v3.0.0

Version: handlebars v3.0.0
Helpers:
Handlebars.registerHelper("get-lessons", function(module) {
    return CHS.ContentUtils.getLessons(module);
});

Handlebars.registerHelper("get-length", function(lst) {
    return lst.length ;
});

Template:
{{#each modules}}

            {{this.title}}

            {{debug this}}

{{get-length (get-lessons this)}}

{{/each}}

Error:
 Uncaught Error: Parse error on line 16:
...
{{get-length (get-lessons this)}}
-----------------------^
Expecting 'CLOSE', 'CLOSE_UNESCAPED', 'STRING', 'INTEGER', 'BOOLEAN', 'ID', 'DATA', 'SEP', got 'INVALID'

Just started handlebars today, so I apologize if this is an easy fix.

I solved my problem. Sorry for the bother!

@john-kelly what was the issue here? On initial glance that seems like it should work...

Long story short, it was a rookie mistake related to having Version 1.0.0 overwriting my Version 3.0.0 import. I was using some company legacy code that I did not know included Handlebars.

Gotcha. Glad you were able to figure it out!
On Tue Feb 17 2015 at 2:46:47 PM John Kelly<EMAIL_ADDRESS>wrote:

Long story short, it was a rookie mistake related to having Version 1.0.0
overwriting my Version 3.0.0 import. I was using some company legacy code
that I did not know included Handlebars.
—
Reply to this email directly or view it on GitHub
https://github.com/wycats/handlebars.js/issues/961#issuecomment-74749789
.


Sourcemap broken when @importing inside a css selector

Sourcemaps are broken when importing inside a css selector.
This worked fine before migrating from gulp to webpack (with same node-sass version), so i assume this is an issue in the loader and not in lib-sass.
The bug is easy to reproduce :
`
// main.scss
@import "fileA";
.my-app {
@import "fileB";
}
`
When inspecting (any browser), styles from "fileA" will be correctly sourcemapped to "fileA.scss", but styles from fileB will point to main.scss, at the line ".my-app {"
Using :
"webpack": "1.14.0",
"node-sass": "4.1.1",
"sass-loader": "4.1.1",
"css-loader": "0.26.1",
"style-loader": "0.13.1",
Scss loader declaration :
{
test    : /.scss$/,
loaders : ["style", "css?sourceMap&-url", "sass?sourceMap"],
include : path.join(__dirname, 'src')
}
Same behavior if using ExtractTextPlugin instead of style loader.

This looks like a duplicate of #272

Yes, it's a duplicate.


frame/g: The random sorting method in gdb is not compatible with Sqlite

Go version
go version go1.22.4 windows/amd64
GoFrame version
2.7.2
Can this bug be reproduced with the latest release?
Option Yes
What did you do?

sqlite中语法是  ORDER BY RANDOM()，mysql语法是  ORDER BY RAND()，goframe的代码里写死了只支持RAND()
What did you see happen?
执行到此会报错
What did you expect to see?
希望从驱动层面支持sqlite的随机排序

Hey, i would like to work on this issue.
Thanks!!


Adding a producer to send over raw TCP and UDP

Took a stab at my first real bit of go coding. The only tricky bit was getting the reconnecting to work when the pipe gets broken (the check on line 97).
Any and all constructive feedback on implementation and general go best practices are appreciated.

Hmm, build failed in the same way as my other PR (on the make build with no output). Not entirely sure why though.


eksctl: 0.76.0 -> 0.77.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/weaveworks/eksctl/releases.
meta.description for eksctl is: "A CLI for Amazon EKS"
meta.homepage for eksctl is: "https://github.com/weaveworks/eksctl"
meta.changelog for eksctl is: ""
Updates performed

Golang update

To inspect upstream changes

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
/nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0/bin/eksctl passed the binary check.
1 of 1 passed binary check by having a zero exit code.
1 of 1 passed binary check by having the new version present in output.
found 0.77.0 with grep in /nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0
found 0.77.0 in filename of file in /nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

2 package rebuild(s)

2 x86_64-linux rebuild(s)
2 x86_64-darwin rebuild(s)

First fifty rebuilds by attrpath
docbookrx
eksctl

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A eksctl https://github.com/r-ryantm/nixpkgs/archive/c33498f3ce0c270489bf1bfd907b89f5c251f52b.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0
ls -la /nix/store/zk2bqkrknalahvlf1iw47msc3hcim2ki-eksctl-0.77.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

eksctl

Maintainer pings
cc @xrelkd @Chili-Man @kalbasit for testing.

Closing so the bot can resubmit with an updated vendorSha256.


fabric8-maven-plugin:3.5.22:resource fails to detect spring-boot application

Description
I have two spring boot applications; based on same versions etc. The issue is that one project detects that its a spring boot application but the other one fails to figure it out.
For which it figures out that its a spring boot application it generates all kubernetes manifest as expected; but in other case it only generates a default deployment.
spring-boot-webmvc - SUCCESS
For this application it detects
https://github.com/stakater-spring-microservice/spring-boot-webmvc/blob/master/pom.xml#L130
--- fabric8-maven-plugin:3.5.22:resource (default) @ spring-boot-webmvc ---
[INFO] F8: Running in Kubernetes mode
[INFO] F8: Generators:
[INFO] F8:  - spring-boot
[INFO] F8: Running generator spring-boot
[INFO] F8: spring-boot: Using Docker image fabric8/java-jboss-openjdk8-jdk:1.2 as base / builder
[INFO] F8: spring-boot: Using fat jar packaging as the spring boot plugin is using `repackage` goal execution
[INFO] F8:  - wildfly-swarm
[INFO] F8:  - karaf
[INFO] F8:  - vertx
[INFO] F8:  - java-exec
[INFO] F8:  - webapp
[INFO] F8: Enrichers:
[INFO] F8: - fmp-name
[INFO] F8: - fmp-controller
[INFO] F8: - fmp-service
[INFO] F8: - fmp-image
[INFO] F8: - fmp-portname
[INFO] F8: - fmp-ianaservice
[INFO] F8: - fmp-project
[INFO] F8: - fmp-dependency
[INFO] F8: - fmp-pod-annotations
[INFO] F8: - fmp-git
[INFO] F8: - fmp-openshift-s2i
[INFO] F8: - fmp-debug
[INFO] F8: - fmp-merge
[INFO] F8: - fmp-remove-build-annotations
[INFO] F8: - fmp-volume-permission
[INFO] F8: - f8-cd
[INFO] F8: - f8-cd-doc-link
[INFO] F8: - f8-cd-grafana-link
[INFO] F8: - f8-icon
[INFO] F8: - f8-expose
[INFO] F8: - fmp-openshift-route
[INFO] F8: - spring-boot-health-check
[INFO] F8: - wildfly-swarm-health-check
[INFO] F8: - karaf-health-check
[INFO] F8: - vertx-health-check
[INFO] F8: - docker-health-check
[INFO] F8: - f8-prometheus
[INFO] F8: - f8-maven-scm
[INFO] F8: - f8-maven-issue-mgmt
[INFO] F8: - f8-watch
[INFO] F8: using resource templates from /home/jenkins/workspace/spring-boot-webmvc/src/main/fabric8
[INFO] F8: fmp-service: Adding a default service 'spring-boot-webmvc' with ports [8080]
[INFO] F8: fmp-portname: Adding port name http for port 8080
[INFO] F8: fmp-portname: Adding port name prometheus for port 9779
[INFO] F8: fmp-portname: Adding port name jolokia for port 8778
[INFO] F8: fmp-debug: Debugging not enabled. To enable try setting the fabric8.debug.enabled maven or system property to 'true'
[INFO] F8: f8-expose: Adding Service label 'expose:true' on service spring-boot-webmvc so that it is exposed by the exposecontroller microservice. To disable use the maven argument: '-Dfabric8.profile=internal-microservice'
[INFO] F8: spring-boot-health-check: Adding readiness probe on port 8080, path='/health', scheme='HTTP', with initial delay 10 seconds
[INFO] F8: spring-boot-health-check: Adding liveness probe on port 8080, path='/health', scheme='HTTP', with initial delay 180 seconds
[INFO] F8: f8-icon: Adding icon for deployment
[INFO] F8: f8-icon: Icon URL: img/icons/spring-boot.svg
[INFO] F8: f8-icon: Adding icon for service
[INFO] F8: f8-icon: Icon URL: img/icons/spring-boot.svg
[INFO] F8: f8-prometheus: Add prometheus.io annotations: prometheus.io/scrape=true, prometheus.io/port=9779
[INFO] F8: kubernetes.yml: Removed OpenShift specific resource 'spring-boot-webmvc' of type Route
[INFO]

moviemanager - FAILS
https://github.com/stakater-spring-microservice/MovieManager/blob/master/pom.xml#L1134
fabric8-maven-plugin:3.5.22:resource
[INFO] F8: Running in Kubernetes mode
[INFO] F8: Generators:
[INFO] F8:  - spring-boot
[INFO] F8:  - wildfly-swarm
[INFO] F8:  - karaf
[INFO] F8:  - vertx
[INFO] F8:  - java-exec
[INFO] F8:  - webapp
[INFO] F8: Enrichers:
[INFO] F8: - fmp-name
[INFO] F8: - fmp-controller
[INFO] F8: - fmp-service
[INFO] F8: - fmp-image
[INFO] F8: - fmp-portname
[INFO] F8: - fmp-ianaservice
[INFO] F8: - fmp-project
[INFO] F8: - fmp-dependency
[INFO] F8: - fmp-pod-annotations
[INFO] F8: - fmp-git
[INFO] F8: - fmp-openshift-s2i
[INFO] F8: - fmp-debug
[INFO] F8: - fmp-merge
[INFO] F8: - fmp-remove-build-annotations
[INFO] F8: - fmp-volume-permission
[INFO] F8: - f8-cd
[INFO] F8: - f8-cd-doc-link
[INFO] F8: - f8-cd-grafana-link
[INFO] F8: - f8-icon
[INFO] F8: - f8-expose
[INFO] F8: - fmp-openshift-route
[INFO] F8: - spring-boot-health-check
[INFO] F8: - wildfly-swarm-health-check
[INFO] F8: - karaf-health-check
[INFO] F8: - vertx-health-check
[INFO] F8: - docker-health-check
[INFO] F8: - f8-prometheus
[INFO] F8: - f8-maven-scm
[INFO] F8: - f8-maven-issue-mgmt
[INFO] F8: - f8-watch
[INFO] F8: fmp-controller: Adding a default Deployment
[INFO] F8: fmp-debug: Debugging not enabled. To enable try setting the fabric8.debug.enabled maven or system property to 'true'
[INFO] F8: spring-boot-health-check: Adding readiness probe on port 8080, path='/management/health', scheme='HTTP', with initial delay 10 seconds
[INFO] F8: spring-boot-health-check: Adding liveness probe on port 8080, path='/management/health', scheme='HTTP', with initial delay 180 seconds
[INFO] F8: f8-icon: Adding icon for deployment
[INFO] F8: f8-icon: Icon URL: img/icons/spring-boot.svg

Info

f-m-p version : 3.5.22
Maven version (mvn -v) :

Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T19:39:06Z)
Maven home: /home/jhipster/.m2/wrapper/dists/apache-maven-3.5.0-bin/6ps54u5pnnbbpr6ds9rppcc7iv/apache-maven-3.5.0
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-openjdk-amd64/jre
Default locale: en_US, platform encoding: ANSI_X3.4-1968
OS name: "linux", version: "4.9.36-moby", arch: "amd64", family: "unix"

Kubernetes setup and version : 7.3

If it's a bug, how to reproduce :
Given all info above.

@rhuss any thoughts please? any workarounds?

@nicolaferraro any thoughts on this one? how can I troubleshoot to find root cause?

Looking at your pom.xml here, it looks that for the second project you're specifying your own image, so the plugin generator must not "generate" a new one.

But shouldn't it generate the kubernetes mainfests? What can I do so, that it still generates kubernetes manifests?

@nicolaferraro also how can I set this environment variable JAVA_APP_JAR :
https://github.com/fabric8io-images/run-java-sh/tree/master/fish-pepper/run-java-sh
I want to use the spring-boot generator and tell the script to run the war file in /deployments/*.war?

Kubernetes resources are created by "Enrichers", while "Generators" are responsible for creating the container image only. Kubernetes resources should be created no matter if you use a fixed image or a generated one.
About the environment variables, you can add them in the in the plugin configuration. See here for example.

@nicolaferraro exactly thats my point; I want to use a custom image but at same time the enrichers to work but they don't work as you see in the sample code above. Any examples in which you have them working?

I followed your example and now plugin looks like this:
            <plugin>
                <groupId>io.fabric8</groupId>
                <artifactId>fabric8-maven-plugin</artifactId>
                <version>${fabric8.maven.plugin.version}</version>
                <configuration>

                    <!--
                    Boolean attribute for switching on verbose output like the build steps when doing a Docker build.
                    -->
                    <verbose>true</verbose>

                    <resources>
                        <env>
                            <!-- Name of the war file -->
                            <JAVA_APP_JAR>*.war</JAVA_APP_JAR>
                        </env>
                    </resources>
                </configuration>
                <executions>
                    <execution>
                        <id>fmp</id>
                        <goals>
                            <goal>resource</goal>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

but still the ENV is not set in the docker image:
[INFO] F8: Step 1 : FROM fabric8/java-jboss-openjdk8-jdk:1.2
[INFO] F8: ---> 2fd9950a1808
[INFO] F8: Step 2 : ENV JAVA_APP_DIR /deployments
[INFO] F8: ---> Using cache
[INFO] F8: ---> 6baee7f0bed5
[INFO] F8: Step 3 : EXPOSE 8080 8778 9779
[INFO] F8: ---> Using cache
[INFO] F8: ---> e2cb6e536f10
[INFO] F8: Step 4 : COPY maven /deployments/
[INFO] F8: ---> 50de365cb319
[INFO] F8: Removing intermediate container 7e5469538f97
[INFO] F8: Successfully built 50de365cb319

The only reason I want to set the environment variable is that because run-java.sh can't find and run the war file inside the /deployments folder.
thanks for help @nicolaferraro ! this is blocking me

Hi @rasheedamir, I see that enrichers are working in both projects above. Even with your latest configuration, if you mvn clean install you should find the Kubernetes resources under target/classes/META-INF/kubernetes.yml and that would be the proof that enrichers are working.
The env variable JAVA_APP_JAR is set at Kubernetes level and inherited by the docker container (you can find it in the yaml file mentioned above). It's not encoded in the docker image but when you run the container in Kubernetes you should be able to see it (just execute the env command inside the running container to check).
Can you try setting the exact name of the war (moviemanager-0.0.1-SNAPSHOT.war) in that envoronment variable and run the project on Kubernetes/Openshift? I've never tried to run a spring-boot war before.

@nicolaferraro for this plugin definition
            <plugin>
                <groupId>io.fabric8</groupId>
                <artifactId>fabric8-maven-plugin</artifactId>
                <version>${fabric8.maven.plugin.version}</version>
                <configuration>

                    <!--
                    Boolean attribute for switching on verbose output like the build steps when doing a Docker build.
                    -->
                    <verbose>true</verbose>

                    <images>
                        <image>
                            <name>%g/%a:%v</name>
                            <alias>moviemanager</alias>
                            <build>
                                <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
                                <assembly>
                                    <descriptorRef>rootWar</descriptorRef>
                                </assembly>
                            </build>
                            <run>
                                <ports>
                                    <port>9009:8080</port>
                                </ports>
                            </run>
                        </image>
                    </images>

                    <enricher>
                        <includes>
                            <include>fmp-controller</include>
                            <include>fmp-service</include>
                            <include>fmp-image</include>
                            <include>fmp-portname</include>
                            <include>fmp-ianaservice</include>
                            <include>fmp-project</include>
                            <include>fmp-dependency</include>
                            <include>fmp-pod-annotations</include>
                            <include>fmp-git</include>
                            <include>fmp-debug</include>
                            <include>fmp-merge</include>
                            <include>fmp-remove-build-annotations</include>
                            <include>fmp-volume-permission</include>
                            <include>f8-cd</include>
                            <include>f8-cd-doc-link</include>
                            <include>f8-cd-grafana-link</include>
                            <include>f8-icon</include>
                            <include>spring-boot-health-check</include>
                            <include>docker-health-check</include>
                            <include>f8-prometheus</include>
                            <include>f8-maven-scm</include>
                            <include>f8-maven-issue-mgmt</include>
                            <include>f8-watch</include>
                        </includes>
                    </enricher>

                </configuration>
                <executions>
                    <execution>
                        <id>fmp</id>
                        <goals>
                            <goal>resource</goal>
                            <goal>build</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

the output of k8s is this; there is no service!
---
apiVersion: v1
kind: List
items:
- apiVersion: extensions/v1beta1
  kind: Deployment
  metadata:
    annotations:
      fabric8.io/git-commit: a00a02451e442e2036ef1fba77cf62cb307c00aa
      fabric8.io/iconUrl: img/icons/spring-boot.svg
      fabric8.io/git-branch: MovieManager-1.0.57
      fabric8.io/metrics-path: dashboard/file/kubernetes-pods.json/?var-project=moviemanager&var-version=1.0.57
    labels:
      app: moviemanager
      provider: fabric8
      version: 1.0.57
      group: com.stakater
    name: moviemanager
  spec:
    replicas: 1
    selector:
      matchLabels:
        app: moviemanager
        provider: fabric8
        group: com.stakater
    template:
      metadata:
        annotations:
          fabric8.io/git-commit: a00a02451e442e2036ef1fba77cf62cb307c00aa
          fabric8.io/iconUrl: img/icons/spring-boot.svg
          fabric8.io/git-branch: MovieManager-1.0.57
          fabric8.io/metrics-path: dashboard/file/kubernetes-pods.json/?var-project=moviemanager&var-version=1.0.57
        labels:
          app: moviemanager
          provider: fabric8
          version: 1.0.57
          group: com.stakater
      spec:
        containers:
        - env:
          - name: KUBERNETES_NAMESPACE
            valueFrom:
              fieldRef:
                fieldPath: metadata.namespace
          - name: JAVA_APP_JAR
            value: '*.jar'
          image: stakater/moviemanager:1.0.57
          imagePullPolicy: IfNotPresent
          livenessProbe:
            httpGet:
              path: /management/health
              port: 8080
              scheme: HTTP
            initialDelaySeconds: 180
          name: moviemanager
          readinessProbe:
            httpGet:
              path: /management/health
              port: 8080
              scheme: HTTP
            initialDelaySeconds: 10
          securityContext:
            privileged: false


debugging a vagrant setup

I have a reproducible vagrant setup, but am having trouble at the point where I want to exec on a simple deployed pod.
I've followed: https://github.com/openvswitch/ovn-kubernetes/blob/master/docs/debugging.md
but I can't 'Sanity check cross host ping.'
do you know how I can debug this further?
I've checked all the later points on that doc, except the CNI log.

Does your pod have an IP address when its created?
Can you provide the output of 'ovn-nbctl show' meanwhile?

Thanks for the response, am redeploying and will confirm.

root@k8sc1:~/work/github.com/openvswitch/ovn-kubernetes/go-controller# kubectl describe pod | grep IP
IP:             <IP_ADDRESS>

ip addr on node
root@k8sc1:~/work/github.com/openvswitch/ovn-kubernetes/go-controller# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet <IP_ADDRESS>/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 02:fb:a8:4c:29:d0 brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::fb:a8ff:fe4c:29d0/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:0c:01:6a brd ff:ff:ff:ff:ff:ff
    inet <IP_ADDRESS>/24 brd <IP_ADDRESS> scope global enp0s8
       valid_lft forever preferred_lft forever
4: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN group default qlen 1000
    link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
5: erspan0@NONE: <BROADCAST,MULTICAST> mtu 1446 qdisc noop state DOWN group default qlen 1000
    link/ether 7e:bc:75:d8:f2:da brd ff:ff:ff:ff:ff:ff
6: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN group default qlen 1
    link/gre <IP_ADDRESS> brd <IP_ADDRESS>
7: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN group default qlen 1
    link/gre6 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 brd 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
8: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1
    link/tunnel6 :: brd ::
10: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether da:0a:06:0d:05:5d brd ff:ff:ff:ff:ff:ff
11: br-int: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 56:e4:fa:73:88:4b brd ff:ff:ff:ff:ff:ff
12: genev_sys_6081: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65485 qdisc noqueue master ovs-system state UNKNOWN group default qlen 1000
    link/ether 46:c7:b9:50:50:cb brd ff:ff:ff:ff:ff:ff
    inet6 fe80::44c7:b9ff:fe50:50cb/64 scope link
       valid_lft forever preferred_lft forever

can ping it on a node:
root@k8sw1:~# ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
64 bytes from <IP_ADDRESS>: icmp_seq=1 ttl=64 time=0.253 ms
64 bytes from <IP_ADDRESS>: icmp_seq=2 ttl=64 time=0.186 ms

Running exec on the pod from a node:
root@k8sw1:~# kubectl --kubeconfig /root/admin_copy.kubeconfig exec -ti busybox-68654f944b-9s6lt  sh
Error from server: error dialing backend: dial tcp: lookup k8sw1 on <IP_ADDRESS>:53: no such host

On controller:
root@k8sc1:~/work/github.com/openvswitch/ovn-kubernetes/go-controller# ovn-nbctl show
switch 7e547ff8-bfa9-4484-bd8f-6aeb392fb9e6 (ext_k8sw3)
    port etor-GR_k8sw3
        type: router
        addresses: ["02:fb:a8:4c:29:d0"]
        router-port: rtoe-GR_k8sw3
    port brenp0s3_k8sw3
        addresses: ["unknown"]
switch cf52d49c-3b0c-4440-9d64-3fc76954de8c (k8sw3)
    port k8s-k8sw3
        addresses: ["d2:60:83:3b:a3:3a <IP_ADDRESS>"]
    port kube-system_kube-dns-598d7bf7d4-6ckkp
        addresses: ["dynamic"]
    port stor-k8sw3
        type: router
        addresses: ["00:00:00:5C:4C:08"]
        router-port: rtos-k8sw3
switch a2280ef5-91b9-4bb0-a782-65234d4a90b0 (k8sw2)
    port stor-k8sw2
        type: router
        addresses: ["00:00:00:1A:4F:9F"]
        router-port: rtos-k8sw2
    port k8s-k8sw2
        addresses: ["c6:e4:fd:5e:cf:eb <IP_ADDRESS>"]
switch 3829075d-7cef-48d9-9c5f-82b3671420c9 (k8sw1)
    port default_busybox-68654f944b-9s6lt
        addresses: ["dynamic"]
    port stor-k8sw1
        type: router
        addresses: ["00:00:00:B4:1A:84"]
        router-port: rtos-k8sw1
    port k8s-k8sw1
        addresses: ["9a:4c:6a:4f:6a:82 <IP_ADDRESS>"]
switch db5d75a2-76c0-4ee0-a679-05114453f2c4 (ext_k8sw1)
    port etor-GR_k8sw1
        type: router
        addresses: ["02:fb:a8:4c:29:d0"]
        router-port: rtoe-GR_k8sw1
    port brenp0s3_k8sw1
        addresses: ["unknown"]
switch 436eaa1e-1997-449d-943d-b670444c7299 (ext_k8sw2)
    port etor-GR_k8sw2
        type: router
        addresses: ["02:fb:a8:4c:29:d0"]
        router-port: rtoe-GR_k8sw2
    port brenp0s3_k8sw2
        addresses: ["unknown"]
switch 07b167ca-e9d8-4ee4-9bc7-229d5f23e00f (join)
    port jtor-GR_k8sw1
        type: router
        addresses: ["00:00:00:FB:3E:CD"]
        router-port: rtoj-GR_k8sw1
    port jtor-k8sc1
        type: router
        addresses: ["00:00:00:7E:FA:43"]
        router-port: rtoj-k8sc1
    port jtor-GR_k8sw3
        type: router
        addresses: ["00:00:00:89:0D:D8"]
        router-port: rtoj-GR_k8sw3
    port jtor-GR_k8sw2
        type: router
        addresses: ["00:00:00:7B:26:7D"]
        router-port: rtoj-GR_k8sw2
router 230285ac-8b68-4141-a8f6-42298b73d1a2 (GR_k8sw3)
    port rtoj-GR_k8sw3
        mac: "00:00:00:89:0D:D8"
        networks: ["<IP_ADDRESS>/24"]
    port rtoe-GR_k8sw3
        mac: "02:fb:a8:4c:29:d0"
        networks: ["<IP_ADDRESS>/24"]
    nat 5e7fb94c-1a71-42ee-9247-ca36d7ebd2af
        external ip: "<IP_ADDRESS>"
        logical ip: "<IP_ADDRESS>/16"
        type: "snat"
router 713660ac-1fe2-4704-aac6-3a0dd2325455 (GR_k8sw1)
    port rtoj-GR_k8sw1
        mac: "00:00:00:FB:3E:CD"
        networks: ["<IP_ADDRESS>/24"]
    port rtoe-GR_k8sw1
        mac: "02:fb:a8:4c:29:d0"
        networks: ["<IP_ADDRESS>/24"]
    nat 40f1aed9-6efc-4f6e-a6b5-8c93adb4cb53
        external ip: "<IP_ADDRESS>"
        logical ip: "<IP_ADDRESS>/16"
        type: "snat"
router 16ba6762-8db2-48a0-87f2-21a3b3ef0acf (GR_k8sw2)
    port rtoj-GR_k8sw2
        mac: "00:00:00:7B:26:7D"
        networks: ["<IP_ADDRESS>/24"]
    port rtoe-GR_k8sw2
        mac: "02:fb:a8:4c:29:d0"
        networks: ["<IP_ADDRESS>/24"]
    nat d83bb792-9dff-4d47-9b78-136adfeeb62c
        external ip: "<IP_ADDRESS>"
        logical ip: "<IP_ADDRESS>/16"
        type: "snat"
router 0a4fe41f-07d2-404e-8a11-8c86d2008130 (k8sc1)
    port rtoj-k8sc1
        mac: "00:00:00:7E:FA:43"
        networks: ["<IP_ADDRESS>/24"]
    port rtos-k8sw1
        mac: "00:00:00:B4:1A:84"
        networks: ["<IP_ADDRESS>/24"]
    port rtos-k8sw3
        mac: "00:00:00:5C:4C:08"
        networks: ["<IP_ADDRESS>/24"]
    port rtos-k8sw2
        mac: "00:00:00:1A:4F:9F"
        networks: ["<IP_ADDRESS>/24"]

but I can't 'Sanity check cross host ping.'

Do you have 3 nodes from vagrant?
if so, from master, are you able to ping the pod IP in a different node?

Here's more debug:
root@k8sbyhand1:~# kubectl get nodes
NAME         STATUS   ROLES    AGE     VERSION
k8sbyhand1   Ready    master   5h16m   v1.12.1
k8sbyhand2   Ready    <none>   5h16m   v1.12.1
k8sbyhand3   Ready    <none>   5h16m   v1.12.1
root@k8sbyhand1:~# kubectl get all --all-namespaces
NAMESPACE     NAME                                     READY   STATUS    RESTARTS   AGE
default       pod/busybox                              1/1     Running   5          5h16m
kube-system   pod/coredns-576cbf47c7-lxq2m             1/1     Running   0          5h16m
kube-system   pod/coredns-576cbf47c7-sh8fk             1/1     Running   0          5h16m
kube-system   pod/etcd-k8sbyhand1                      1/1     Running   0          5h15m
kube-system   pod/kube-apiserver-k8sbyhand1            1/1     Running   0          5h15m
kube-system   pod/kube-controller-manager-k8sbyhand1   1/1     Running   0          5h15m
kube-system   pod/kube-flannel-ds-amd64-h2jdh          1/1     Running   0          5h16m
kube-system   pod/kube-flannel-ds-amd64-vlmj8          1/1     Running   0          5h16m
kube-system   pod/kube-flannel-ds-amd64-vxpb6          1/1     Running   0          5h16m
kube-system   pod/kube-proxy-96spv                     1/1     Running   0          5h16m
kube-system   pod/kube-proxy-cmhdk                     1/1     Running   0          5h16m
kube-system   pod/kube-proxy-djpj4                     1/1     Running   0          5h16m
kube-system   pod/kube-scheduler-k8sbyhand1            1/1     Running   0          5h15m

NAMESPACE     NAME                 TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)         AGE
default       service/kubernetes   ClusterIP   <IP_ADDRESS>    <none>        443/TCP         5h16m
kube-system   service/kube-dns     ClusterIP   <IP_ADDRESS>   <none>        53/UDP,53/TCP   5h16m

NAMESPACE     NAME                                     DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                     AGE
kube-system   daemonset.apps/kube-flannel-ds-amd64     3         3         3       3            3           beta.kubernetes.io/arch=amd64     5h16m
kube-system   daemonset.apps/kube-flannel-ds-arm       0         0         0       0            0           beta.kubernetes.io/arch=arm       5h16m
kube-system   daemonset.apps/kube-flannel-ds-arm64     0         0         0       0            0           beta.kubernetes.io/arch=arm64     5h16m
kube-system   daemonset.apps/kube-flannel-ds-ppc64le   0         0         0       0            0           beta.kubernetes.io/arch=ppc64le   5h16m
kube-system   daemonset.apps/kube-flannel-ds-s390x     0         0         0       0            0           beta.kubernetes.io/arch=s390x     5h16m
kube-system   daemonset.apps/kube-proxy                3         3         3       3            3           <none>                            5h16m

NAMESPACE     NAME                      DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
kube-system   deployment.apps/coredns   2         2         2            2           5h16m

NAMESPACE     NAME                                 DESIRED   CURRENT   READY   AGE
kube-system   replicaset.apps/coredns-576cbf47c7   2         2         2       5h16m

pods
root@k8sbyhand1:~# kubectl get pods --all-namespaces
NAMESPACE     NAME                                 READY   STATUS    RESTARTS   AGE
default       busybox                              1/1     Running   5          5h17m
kube-system   coredns-576cbf47c7-lxq2m             1/1     Running   0          5h17m
kube-system   coredns-576cbf47c7-sh8fk             1/1     Running   0          5h17m
kube-system   etcd-k8sbyhand1                      1/1     Running   0          5h17m
kube-system   kube-apiserver-k8sbyhand1            1/1     Running   0          5h17m
kube-system   kube-controller-manager-k8sbyhand1   1/1     Running   0          5h17m
kube-system   kube-flannel-ds-amd64-h2jdh          1/1     Running   0          5h17m
kube-system   kube-flannel-ds-amd64-vlmj8          1/1     Running   0          5h17m
kube-system   kube-flannel-ds-amd64-vxpb6          1/1     Running   0          5h17m
kube-system   kube-proxy-96spv                     1/1     Running   0          5h17m
kube-system   kube-proxy-cmhdk                     1/1     Running   0          5h17m
kube-system   kube-proxy-djpj4                     1/1     Running   0          5h17m
kube-system   kube-scheduler-k8sbyhand1            1/1     Running   0          5h16m

describe
root@k8sbyhand1:~# kubectl describe pod busybox | grep IP
IP:                 <IP_ADDRESS>

ping fails:
root@k8sbyhand1:~# ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.

IYI, it can be reproduced if you have vagrant, virtualbox and python. LMK.

@ianmiell
If I understand you right, this is not the vagrant that this repo provides, but rather a vagrant that you have built? I ask this because, the vagrant provided by this repo does not install flannel.
Lets get that clarified, and then move further.
(flannel provides its own networking. I think, there may be a conflict here with OVN.)

The code is here:
https://github.com/ianmiell/shutit-k8s-by-hand
The commands to set up the 4 vagrant machines and configure them are in
this script:
https://github.com/ianmiell/shutit-k8s-by-hand/blob/master/shutit_k8s_by_hand.py
it should be fairly self-explanatory - I don't use OVN afaik - the flannel
bit is here:
https://github.com/ianmiell/shutit-k8s-by-hand/blob/master/shutit_k8s_by_hand.py#L176
Ian
On Fri, Oct 12, 2018 at 5:58 PM Gurucharan Shetty<EMAIL_ADDRESS>wrote:

@ianmiell https://github.com/ianmiell
If I understand you right, this is not the vagrant that this repo
provides, but rather a vagrant that you have built? I ask this because, the
vagrant provided by this repo does not install flannel.
Lets get that clarified, and then move further.
(flannel provides its own networking. I think, there may be a conflict
here with OVN.)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openvswitch/ovn-kubernetes/issues/439#issuecomment-429392268,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGrczdTioWyEPEK1gIyTLacg5VRZTdhaks5ukMolgaJpZM4W4i9X
.


Fork-Join: Service hangs when there are more than two workers

When we use fork-join inside a service and have more than two workers, service invocation is getting hanged.

Fixed in 0.8.0 GA.


cannot access '/srv/Portus/vendor/bundle/ruby/2.1.0/gems/bundler*'

Hello
After installing Portus via rpm, i encounter the following error :
# private-docker:~ # portusctl setup --ssl-certs-dir /srv/Portus/ssl/
ls: cannot access /srv/Portus/vendor/bundle/ruby/2.1.0/gems/bundler*': No such file or directory
/usr/sbin/portusctl: line 9: /srv/Portus/vendor/bundle/ruby/2.1.0/bin/bundler.ruby2.1: No such file or directory

This is due do the fact that the path is not the correct one :
# ls /srv/Portus/vendor/bundle/ruby/
2.2.0

Portus was installed with the following commands :
# zypper addrepo http://download.opensuse.org/repositories/home:/cubesky/openSUSE_Leap_42.2/home:cubesky.repo
# zypper addrepo http://download.opensuse.org/repositories/Virtualization:containers:Portus:2.2/openSUSE_Tumbleweed/Virtualization:containers:Portus:2.2.repo
# zypper refresh
# zypper install portus

Installed on :
# cat /etc/os-release
NAME="openSUSE Leap"
VERSION="42.2"
ID=opensuse
ID_LIKE="suse"
VERSION_ID="42.2"
PRETTY_NAME="openSUSE Leap 42.2"
ANSI_COLOR="0;32"
CPE_NAME="cpe:/o:opensuse:leap:42.2"
BUG_REPORT_URL="https://bugs.opensuse.org"
HOME_URL="https://www.opensuse.org/"

Just saw i used the wrong repository...
Sorry.


Metric accessor

Changes from hpcprof-parallel to a copy of master related to introducing MetricAccessors.

Running
hpcrun amg2013
hpcstruct amg2013
produces the same amg2013.struct file for this branch as for master.

Your test running hpcstruct wouldn’t exercise the metric accessor code.

I welcome your suggestions on what tests I should be running.

You should measure anything (e.g., hpcstruct analyzing itself) and then use hpcprof to analyze the measurement data (using the structure file produced as a side effect of the measured execution).

-bash-4.2$ hpcprof hpcstruct-bin.hpcstruct
ERROR: While reading profile 'hpcstruct-bin.hpcstruct'...
[../../../../src/lib/analysis/CallPath.cpp:174]
ERROR: [Diagnostics::FatalException] error reading 'fmt-hdr' [../../../../src/lib/prof/CallPath-Profile.cpp:893]
[../../../../src/tool/hpcprof/main.cpp:105]
I get the same results on master.  Probably user error.


CAMEL-10542: DataFormat from registry is used for every dataformat operation (marshal/unmarshal)

I'm opening this PR for review as there are some changes on CamelContext level so I'd like to gather some feedback.
As today the DataFormat resolution works as follow:

search int the registry if a DataFormat instance exists for a given name
if not found in registry create a new one from the resources (META-INF/services/...)

This my cause issues as per CAMEL-10542
The proposed solution introduces a new DataFormatFactory and a new method to DataFormatResolver to have a way to explicit request for a new instance so it looks like:
public interface DataFormatResolver {
    // Resolve using registry then fallback to createDataFormat
    DataFormat resolveDataFormat(String name, CamelContext context);

    // Creates DataFormat using factory from registry or fallback to resources
    DataFormat createDataFormat(String name, CamelContext context);
}

Model's DataFormatDefinition is now using createDataFormat except for CustomDataFormat which indeed is supposed to eventually share the same data format.
I still need to implement some stuffs but the basic concept is here.
Any feedback would be really appreciated.

Looks good to me, great! The approach is much cleaner than setting a prototype scope to all beans in the registry (I guess that you are going to change each DataFormat in spring-boot starters into a DataFormatFactory).
Is the CustomDataFormat supposed to share the reference just because it doesn't allow configuration properties?

Yep, rebuild of camel and starters ongoing.
Yep the custom format is configured with a bean or a reference to a dataformat configuration and it is not supposed to change it.

Looks good Luca so keep on the good work


Use tsup and tsup-preset-solid for building packages

Still WIP - wanted to trigger some CIs.
I still need to do the submodules - should I loop all of the directories in /core ever to get the entries?
Also, I've made the packages ESM by default ("type": "module") (I kinda require that in tsup-preset-solid, cjs is only shipped additionally for the older tooling (jest))

I cannot do anything about the way the chunks are made, which was my only issue with this setup.
Basically, the build generates ~100 files in /dist/chunks which contains all the shared logic - which in this case is ALL the logic.
That + additional ~30 dts chunks in /dist.
Those chunks are created because there are multiple entries, and esbuild wants to separate shared code so that you only import what's needed.
If this is an issue, then you could always just drop the additional entries and only use the main index one, then there won't be any additional chunks.

I cannot do anything about the way the chunks are made, which was my only issue with this setup. Basically, the build generates ~100 files in /dist/chunks which contains all the shared logic - which in this case is ALL the logic. That + additional ~30 dts chunks in /dist. Those chunks are created because there are multiple entries, and esbuild wants to separate shared code so that you only import what's needed. If this is an issue, then you could always just drop the additional entries and only use the main index one, then there won't be any additional chunks.

Will it be simpler to go the "separate package" way (built with tsup-preset-solid) ?

It would eliminate chunks but preserve the "you only import what's needed" benefit.
Also, it would be less to download if one needs only one component.
But it makes your life a little bit harder.
You can always have a build --watch running so that you can make changes in different packages and have it reflect, but things like "go to definition" will navigate you to /dist.
Not sure if I would make a separate package out of every component if I were you. Because that's a lot of components, that keep getting added. Splitting packages is good if there are clearly different modules.
Tree-shaking should work the same regardless of the splitting. It's only about dx.

Like we've said on Discord, i've moved to tsup-preset-solid.
When the lib become stable I will release a v1.0.0 of each component in their own package and @kobalte/core will be the package that include all.


Added advanced Mercurial-SCM configuration

All in the title...

Thank you for a pull request! Please check this document for how the Jenkins project handles pull requests

Thanks for your contribution. I rebased and merged your changes manually. Sorry that it took so long.


Bumped tungstenite and tokio-tungstenite to 20.0

Thanks for the PR! Merged and released as v0.11.0 \o/


Completely Overhaul APU, add Unit Tests

This branch is nearly a cleanroom rewrite of the APU, starting with a gut of everything but the external interface. The goals of this rewrite included improving the maintainability of the code, and introducing a framework to test that code for various hardware behaviors and quirks. The unit tests can be run with busted. This is my first time writing unit tests; be gentle.
The new implementation breaks up the components for each channel, and does its best to share functionality across channels where possible. Things like the VolumeEnvelope and LengthCounter are now individual units whose behavior can be tested in isolation.
The rewrite is feature complete compared to the original, and does not appear to introduce any major regressions. I've run it through my own small library of test games and things generally appear to be at least on par with the old LuaGB implementation. In a few cases there are improvements:

Length Counters should now be much closer to cycle accurate
VolumeSweeps no longer incorrectly floor their partials, (they are actually counters now, the concept of partials no longer exists) causing them to complete on time

There are a few small known bugs, some of which are awaiting hardware verification:

Startup periods are rather short, which can cause performance issues in CGB games until the program initializes the registers; Shantae is particularly noticable.
The wave channel's quirks are mostly missing. Dragon's Lair seems to rely on these quirks for some of its SFX, notably death and respawn
The volume centering method appears to interact poorly with certain length counter patterns, causing occasional pops. Noticeable during Mario 2's file select screen
The default sample rate remains 32 KHz, which is still too low and does affect accuracy audibly, especially the noise channel. However, it should now be much easier to patch in sample rate selection as a UI option.
Startup status for registers is incomplete, affecting a handful of games. Notably, Prehistorik Man takes a while to silence one of the square channels for some reason, but plays correctly from then onwards.

These issues are ultimately minor, and on the whole the rewrite is generally much more accurate than before. The real goal was component isolation. Now that the individual parts of the system aren't so tightly coupled, with any luck it will be easier to track down the remaining issues and improve the system piece by piece.
Fixes #26

This has cooked for quite long enough. There's quite a bit of work to do yet, but the rewrite is still a much more solid starting point. I'm pulling it in, and will open separate (much smaller) issues for the remaining work.