Clarification of newline usage

Hello, I'm currently implementing NetCDF capability for a Julia package, by using the excellent NCDatasets.jl package. The data comes from inversion models, and data from more than one model may be present in the file. I use an ancillary variable with standard_name of source to store the model name at each coordinate, following the ancillary variables guidelines. Next, I also want to use a global attribute called source to store the list of all model names.
From section 2.6.2:

For readability in ncdump outputs it is recommended to embed newline characters into long strings to break them into lines.

I use an operation like this:
"source" => join(unique(table.model), ",\n")

where table.model is the list of model names (strings). However, in the output of ncdump -h I see the raw newline codes:
		:source = "GSRM v2.1,\nITRF2014 [2016],\nNNR-MORVEL56,\nGEODVEL 2010,\nMORVEL 2010,\nITRF2008,\nAPKIM2005-DGFI,\nAPKIM2005-IGN,\nGSRM v1.2,\nCGPS 2004,\nREVEL 2000,\nITRF2000 (AS&B [2002]),\nHS3-NUVEL1A,\nAPKIM2000.0,\nITRF2000 (D&A [2001]),\nHS2-NUVEL1A,\nNUVEL 1A,\nNUVEL 1" ;

From another NetCDF file I had on my hardrive (CF 1.0), I get an output like this:
		:source = "CCSM3.0, version beta19 (2004): \n",
			"atmosphere: CAM3.0, T85L26;\n",
			"ocean     : POP1.4.3 (modified), gx1v3\n",
			"sea ice   : CSIM5.0, T85;\n",
			"land      : CLM3.0, gx1v3" ;

Any clarification on how this should be done? I'm using netcdf library version 4.8.1 of Oct  1 2021 20:26:26.

It's noteworthy that ncdump renders an embedded newline as '\n' followed by an actual newline.  I'm not sure how this relates to the way that Julia works, but when I'm adding embedded newline characters to long strings in NCL, I just add a newline, not an escape sequence.  So I write code like this:
BR = str_get_nl()
parents = "Parent files had the following history attributes:"+BR
parents = parents + "Specific humidity file "+qfile+":"+BR
parents = parents + finq@history+BR
...
fout@history_of_parent_files = parents

and the string that I'm assigning to the netcdf attribute has embedded newline characters, not \n escapes. Then when I print it out with ncdump -h, it looks like this:
                        "Specific humidity file huss.rcp85.GFDL-ESM2M.WRF.day.NAM-22i.mbcn-Daymet.nc:\n",
                        "Sat Sep 25 22:32:30 MDT 2021: huss.rcp85.GFDL-ESM2M.WRF.day.NAM-22i.raw.nc bias-corrected using MBCn with Daymet obs\n",

I've never worked with the netcdf library directly, so unfortunately I can't offer any advice on that front, but maybe this will at least help narrow down the nature of the problem.

It's noteworthy that ncdump renders an embedded newline as '\n' followed by an actual newline.

Thank you for the clarification.

when I'm adding embedded newline characters to long strings in NCL, I just add a newline, not an escape sequence

Interesting. I tried a few different ways of embedding the newline in Julia but they haven't worked so far. It looks like NCAR uses CRLF for newlines, but even Julia's '\r\n' doesn't seem to work. I can use raw strings:
s = """foo
bar"""

but Julia always puts '\n' at the line endings. I was as yet unable to find the actual definition of that BR symbol in the NCAR sources, if anyone could point me to where the string ops are defined I could take a look, although I'll be going in blind with C/fortran.
Alternatively I could check the ncdump sources for the line splitting logic...

I should clarify: when I use '\r\n', I see only the first line. So the newline is perhaps being embedded, but there is no '\n' at the end and the other lines disappear.

BR is just a variable, defined on the first line as the output of str_get_nl()

Thanks, I guess I need to find out what str_get_nl is doing.
Comment about \r\n was inaccurate, I was using the wrong dataset. It doesn't work in the same way as \n, i.e. the symbols appear in the output but the line is not split.

@adigitoleo, you are simply seeing an inconsistency in ncdump.   Recent version of this utility are not consistent for displaying embedded newlines in attributes.  This varies with the type of the internal file format.  Notice that true newline characters are displayed with the escape sequence "\n" inside quotes, in all cases.  However, netcdf-3 and netcdf4-classic formats also add the extra visual line break.  From ncdump -hs:
:A = "line 1\n",
    "line 2" ;
:_Format = "netCDF-4 classic model" ;

Whereas full netcdf-4 format does not include the extra visual break:
:A = "line 1\nline 2" ;
:_Format = "netCDF-4" ;

The first style is traditional and was ubiquitous for several years, until support for string data type evolved in one of the early netcdf-4 library versions.   I believe that the CF readability policy was conceived early, and was based only on the traditional netcdf-3 behavior.

@Dave-Allured I see, thanks. I'll stop worrying about it in that case. Perhaps this could be mentioned in the spec somewhere as a caveat or something. Otherwise this can probably be closed.

I agree with the original rationale of CF section 2.6.2, embed newline characters into long strings to break them into lines, for readability whenever possible.
Now there is a complication.  Full netcdf-4 format offers two different string data types; character and string.  I think with introduction of the formal string data type, ncdump was changed for both data types, so that visual line breaks would be used only to separate elements of an array of strings.  I think the new intent was that if you want to display multiple lines, you are supposed to use an array of strings, rather than newline delimiters.
The traditional character data type supports only a 1-dimensional array of single characters.  Therefore the original intent of ncdump was to provide use of newlines to embed visual line breaks.
The result was a developer's choice to switch the display style based on the file format type.  At this time there is not much to be done to change that.
This dichotomy creates some challenges for standards, and for conversions between the two data types.  Note that writing formal string data type with embedded newlines is still perfectly legal according to basic netcdf-4 rules.  I have not looked up how CF handles this.
I advise not making any reading code that depends specifically on one or the other of these two newline strategies.  It would be reasonable to have code that knows how to digest both strategies in a smart way, so that the application does the right thing and gets an equivalent result for both cases.

Yes, I agree with @Dave-Allured, especially as section 2.6.2 only is a recommendation that some may follow and others may not, and the word "readability" may be interpreted differently.

I think we should see ncdump as what it is, that is essentially a 3rd party debug tool. As such, its specific choice of output format, regrettable as it may be, doesn't have bearing on the CF conventions and imho poses no challenge to standards.

OK I think this can be closed, I agree that if anything this is a ncdump issue. Thanks.


Bug in async lifecycle hooks with synchronous implementation

Thanks @zilto -- see https://github.com/DAGWorks-Inc/burr/pull/438/files.

See https://github.com/DAGWorks-Inc/burr/pull/444 for a quick fix -- will be digging in more. Good find @zilto!


fix: url description for image of react.md

URL description and image are different.
Format the code by the way.

ty!


DEV HOME APP CLOSES AFTER CLICKING ON ADD REPO

Dev Home version
0.1201.442.0
Windows build number
10.0.22631.3374
Other software
OS Build Version: 10.0.22631.3374.amd64fre.ni_release.220506-1250
.NET Version: .NET 8.0.1
Steps to reproduce the bug
when i click on add repository the dev home app automatically closes
Expected result
it's suppose to open another dialog windows for me to create my repo
Actual result
it closes dev home app
Included System Information
CPU: Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
Physical Memory: 23.87GB (15.33GB free)
Processor Architecture: x64
Included Extensions Information
Extensions:
Microsoft.Windows.DevHome_0.1201.442.0_x64__8wekyb3d8bbwe
Microsoft.Windows.DevHome_0.1201.442.0_x64__8wekyb3d8bbwe
9932MartCliment.WingetUIWidgets_<IP_ADDRESS>_x64__g91dtg5srk15g
Microsoft.Windows.DevHomeGitHubExtension_0.1200.442.0_x64__8wekyb3d8bbwe
Widget Service:
MicrosoftWindows.Client.WebExperience_424.1301.310.0_x64__cw5n1h2txyewy

Duplicate of #2485


Implement extension functions MaxOrNone and MinOrNone

The Linq Version of Min and Max throw on an empty list, these version return a None if Optional in such a case.
Maybe also AverageOrNone

There are lots of overloads, for Min, Max Averag... (https://github.com/dotnet/runtime/blob/master/src/libraries/System.Linq/src/System/Linq/Min.cs)
How do we handle Nullables?

we do not implement the overloads
we implement overloads for Nullable Types  but throw NotImplementedException("Use Option instead of Nullable)
we handle Nullables as NonValues somehow (we actually have to do that for NaN in float and double anyway)


dplyr.filter() restructures group_data incorrectly

P1 . It seems  group_by >> mutate() >>filter()>> mutate()   has some confilicts.
I wanna add a columns with cumsum function, and filter the added column by some conditions ,then rank the column.
from datar.all import *
from datar.datasets import mtcars

>>>df = (mtcars
         >> arrange(f.gear)
        >> group_by(f.cyl)
        >> mutate(cum=f.drat.cumsum())
        >> filter(f.cum >=5)
        >> mutate(ranking=f.cum.rank())
         )
>>>df
ValueError: Length mismatch: Expected axis has 13 elements, new values have 6 elements

But  if I select only some rows, the code above worked.
>>>df = (mtcars
        >>head(20)  # Not working when the number is above 25.
        >> arrange(f.gear)
        >> group_by(f.cyl)
        >> mutate(cum=f.drat.cumsum())
        >> filter(f.cum >=5)
        >> mutate(ranking=f.cum.rank())
        )
>>>df
# No erros occour.

If I noted the arrange, error occoured as the first code.
>>>df = (mtcars
        >>head(20)
        #>> arrange(f.gear)
        >> group_by(f.cyl)
        >> mutate(cum=f.drat.cumsum())
        >> filter(f.cum >=5)
        >> mutate(ranking=f.cum.rank())
        )
>>>df
#ValueError: Length mismatch: Expected axis has 13 elements, new values have 6 elements

P2   Filter after group_by then mutate columns ,like  group_by() >> filter ()>>mutate()   ,  also has some erros.
>>>df = (mtcars
         >> arrange(f.gear)
        >> group_by(f.cyl)
        >> filter(f.drat >=4)
        >> mutate(ranking=f.drat.rank())
      )
>>>df
KeyError: 2

Same code, I changed the column to filter, no erros occour.
df = (mtcars
         >> arrange(f.gear)
        >> group_by(f.cyl)
        >> filter(f.qsec >=18)
        >> mutate(ranking=f.drat.rank())
      )
df
# No erros

Fixed at 0.5.4


Import chardet fails with "module not found"

Issue: Since the noarch update, chardet cannot be imported anymore.. this seems to be related to https://github.com/conda-forge/requests-feedstock/issues/23

Environment (conda list):

$ conda list

Details about  conda and system ( conda info ):

$ conda info

@jakirkham done,.. please see here https://github.com/conda-forge/chardet-feedstock/pull/11 and here https://github.com/conda-forge/idna-feedstock/pull/9

fixed via #11

Thanks a lot @gabm


[Fix #10951] Fix an autocorrection error for Lint/EmptyConditionalBody

Fix: #10951

Before submitting the PR make sure the following are checked:

[x] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[x] Wrote good commit messages.
[x] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[x] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

I updated this PR. Thank you so much!

Can you add the test below and it passes?
   it 'registers an offense for missing `elsif` body' do
     expect_offense(<<~RUBY)
       if condition
         do_something1
       elsif other_condition1
       ^^^^^^^^^^^^^^^^^^^^^^ Avoid `elsif` branches without a body.
       elsif other_condition2
         do_something2
       end
     RUBY

     expect_correction(<<~RUBY)
       if condition
         do_something1
       elsif other_condition2
         do_something2
       end
     RUBY
   end

Would be a syntax error.
% bundle exec rspec  spec/rubocop/cop/lint/empty_conditional_body_spec.rb

Randomized with seed 32341
....F.............

Failures:

  1) RuboCop::Cop::Lint::EmptyConditionalBody registers an offense for missing `if` and `elsif` body
     Failure/Error: expect(new_source).to eq(correction)

       expected: "if condition\n  do_something1\nelsif other_condition2\n  do_something2\nend\n"
            got: "if condition\n  do_something1\nif other_condition2\n  do_something2\nend\n"

       (compared using ==)

       Diff:
       @@ -1,6 +1,6 @@
        if condition
          do_something1
       -elsif other_condition2
       +if other_condition2
          do_something2
        end

     # ./lib/rubocop/rspec/expect_offense.rb:162:in `expect_correction'
     # ./spec/rubocop/cop/lint/empty_conditional_body_spec.rb:51:in `block (2 levels) in <top (required)>'

Finished in 0.17541 seconds (files took 1.09 seconds to load)
18 examples, 1 failure

Failed examples:

Thank you very much. I updated this PR.


Error: no test specified

I tried the xlsx sample, when trying to run the test, hit error "Error: no test specified". How should I solve this issue?

hi, what sample is it ? from the testmybot repository ?


assets/images

Why:
Closes [issue link]

What's being changed:

Check off the following:

[ ] I have reviewed my changes in staging (look for the latest deployment event in your pull request's timeline, then click View deployment).
[ ] For content changes, I have completed the self-review checklist.

Writer impact (This section is for GitHub staff members only):

[ ] This pull request impacts the contribution experience

[ ] I have added the 'writer impact' label
[ ] I have added a description and/or a video demo of the changes below (e.g. a "before and after video")

I got a call back at my convenience and I will reply stop for reply please thank me again so []()


cks: fix for null hypervisor type

Fixes #4241, failure to deploy VM when vm.instancename.flag is set to true
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[x] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Screenshots (if appropriate):
How Has This Been Tested?

@blueorangutan package

@shwstppr a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Packaging result: ✔centos7 ✔debian. JID-1714

@blueorangutan test centos7 vmware-67u3

@rhtyd a Trillian-Jenkins test job (centos7 mgmt + vmware-67u3) has been kicked to run smoke tests

Trillian test result (tid-2376)
Environment: vmware-67u3 (x2), Advanced Networking with Mgmt server 7
Total time taken: 55222 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr4260-t2376-vmware-67u3.zip
Intermittent failure detected: /marvin/tests/smoke/test_vm_life_cycle.py
Intermittent failure detected: /marvin/tests/smoke/test_host_maintenance.py
Smoke tests completed. 82 look OK, 1 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

test_11_migrate_vm
Error
57.39
test_vm_life_cycle.py


The CrackDataset not found

Excuse me! I'm a Chinese student that recently doing the Road Damage works! Your work is excellent and I want to study based your work. But the test Dataset is not found, Could you please share your test Dataset? Thank you very much!

con cac

I would like to tell @wuyujiji  that the CrackDataset is the same DamageDataset you used in the very first lines of this code. Remember that we used the dataset to train our model and we are using the same to test our results.


Slow to change into some languages

Test device
iPad 6th Gen
Operating System
iPadOS 16
Browser
Safari
Problem description
For https://github.com/phetsims/qa/issues/844 and https://github.com/phetsims/qa/issues/845
Switching to different languages may take significantly longer than appropriate. The time an individual language takes to switch to seems relatively consistent, but different languages take different amounts of time. Bengali could take a few seconds. I didn't see this on Win 11 Chrome, but that may be device speed. The video below shows this. A thin outline appears when I first click a language, and a blue highlight appears when the switch happens. I noticed that the speed in opening the preferences dialog was also slow in Bengali. I think this may be related to https://github.com/phetsims/scenery/issues/1458.
Visuals
https://user-images.githubusercontent.com/41024075/198736904-ad4d29ff-c79b-4bb1-8e17-e763b59d7040.MOV

I'm seeing this in https://github.com/phetsims/qa/issues/999. It also seems to slow opening the preferences menu in these languages.

I saw this in https://github.com/phetsims/qa/issues/1009 with the Gujarati locale, and it also seemed to slow down the sim itself in that locale. Dragging the house in and out of the toolbox was noticeably laggy.

I tested this for both Chrome and Safari on my Macbook Pro (M1 chip) and no lag in Chrome, but lots of lag in Safari.
It doesn't look like this was prioritized for Center and Variability, so I doubt it will be prioritized for the number-line-suite publications, but I would like to check with @kathy-phet on that first. Seems like it will definitely need some @jonathanolson time.

I think the lag has to do with the fact that some characters aren't rendered correctly for some locales on safari. This was discussed in https://github.com/phetsims/scenery/issues/1458.

Thanks for the discussion. Yes, I think this will need some attention, but it might be solved with Alpenglow work in the end. Let's continue deferring this as lower priority until we see if Alpenglow can help be a solution to speed this up.


[1.16] Server crash from simple machine frame recipe

Playing on Enigmatica 6 v0.2.0
Industrial Foregoing Version: 3.0.1
Titanium Version: 3.0.1
Crashlog If Applicable (Upload to pastebin/gist):
https://pastebin.com/d9eZ6KQZ

Update IF


The project is broken

Downloading the code, npm install is successful but npm start generates an error npm ERR! missing script: start. Looking in package.json at scripts listed, there is "standard" but npm run standard just generates an error.  Any idea how to fix this?
Thanks,
Rob

Are you looking to use react-overdrive in your own project, or contribute to it?

For using react-overdrive in your own project, just use npm install react-overdrive and follow the instruction in the readme

For contributing, use npm run dev to run the development build and watch for code changes. Use npm run build to package it for production use

As I said, I downloaded the code. So the idea initially is to try out the demos in the downloaded project but I can’t see how to get it to run without failing?

just use "npm run dev" instead of "run start"
Le mer. 31 oct. 2018 à 22:22, roberthchapman<EMAIL_ADDRESS>a
écrit :

As I said, I downloaded the code. So the idea initially is to try out the
demos in the downloaded project but I can’t see how to get it to run
without failing?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/berzniz/react-overdrive/issues/52#issuecomment-434852442,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AaJSYTdXPDmTqJsuVFaHkxMpkZfhSOdTks5uqhSQgaJpZM4YERfL
.

@roberthchapman which of the demos did you try running? You'll have to cd into their folder and read the README.md for each one for instructions


CDS type "Date" to TypeScript type "Date" conversion is misleading/incorrect

Hi,
first up, great to finally see some native type generation support in CAP. The automatic regeneration via VS Code extension is also working great 🥳 .
Unfortunately I stumbled upon an issue that I also remarked in the cds2types project (https://github.com/mrbandler/cds2types/issues/40). It concerns the handling/conversion of CDS Date types.
I created a sample repository where the issue can be tested.
Basically the typed result of e.g. a SELECT query wrongly marks a CDS Date column as a JavaScript Date type wherein it is actually just a formatted date string.
Regards,
Ludwig

Hi Ludwig,
just giving a quick update: I was able to get a hold of the runtime team to confirm what you have found. CDS Date, can be a JS Date object under certain circumstances, but will be a string in most cases. Will change accordingly in an upcoming release.
Best,
Daniel

Hi Daniel,
That's really funny. I was just about to suggest that we could maybe use a union type string | Date. 😉
Looking forward to it 👌.
Thanks and regards,
Ludwig

Also fine. I just checked, and it looks good.
Thanks for the quick fix


Moved the test duplicate in concept from curation to error

I'm somewhat confused now: Why did this PR not launch the test caseologue and caseologue error essential CI workflows?
I thought we fixed that, but doesn't look like. Do you know what this is, @maanst ?

I'm somewhat confused now: Why did this PR not launch the test caseologue and caseologue error essential CI workflows? I thought we fixed that, but doesn't look like. Do you know why this is, @maanst ?

I don't know...

Yes, for some weird reason they were both stuck in the test. Re-run now, with success, and merged both #13 and #14


Fix searching for quotes with indentations

Issue #, if available:
Fixes #77
Description of changes:
Trim quotes line by line to allow arbitrary whitespace at line start for formatting.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Could you extract this logic into a separate function and write a unit test or two showing that it works how we want it to? Also you missed the Spec impl above.

Also you missed the Spec impl above.

Yeah, I noticed that. Considering the Spec type quotes were all generated and the #77 case wouldn't occur, I figured it might not need the fix.


How to extend the stylesheet in "element-variables.css"?

I want to change the background color of the table, but neither "table-body-background" nor "table-body-background" works. Does it support to extend the variables defined in "element-variables.css"?  Are there any documents?

same question

same problem, i try to change the table.css


Fix ls_name for unit logical symbol

This PR fixes #385
Along with #386, this also fixes ortac#207

CI is green and this is minimal and trivial modifications.
I'm merging at the end of the day to move on with the release.


[Torch] fix typo in new_full

fix typo in new_full
cc @shingjan, @yelite

@tvm-bot rerun

@tvm-bot rerun


Document local testing guides

It's useful for contributors to be able to run tests for the project locally to validate their changes and to gain familiarity with how Cilium operates.
This page is primarily focused on GitHub-based CI testing currently:
https://docs.cilium.io/en/stable/contributing/testing/
It would be good to add a new section before all the others to highlight good practices for local development, such as:
### Tasks
- [ ] Running local linters - `make`
- [ ] Running `go test ./...`
- [ ] Deploying kind and using the CLI connectivity test
- [ ] Any integration test mechanism we may have

I've previously run these to resolve CI failures:
golangci-lint run
~/go/bin/goimports -local github.com/cilium/cilium/ -w .

👍 There's also a few make targets available for some linting/checking:
make lint
make lint-fix
make precheck
make postcheck

Most of these are already covered by just running make in the top level of the tree, but note that they can take several minutes particularly the first time if there is no Go build cache.

I'm actually a bit surprised that we don't have a make unit-tests or make tests target to run go test ./..., as this would be a very obvious case to include for running the Go unit tests.
We also have make tests-privileged and make integration-tests for some of the more advanced tests.
BPF unit tests are under bpf/tests and can be run with make -C bpf/tests run.
However most of the CI is based on end-to-end tests which are a collection of running cilium connectivity test from the CLI on a target environment, or running some of the various older runtime tests from the test/ directory.


VACMS-19386 Add Checklist template

Description
Adds Resources & Support Checklist template.
Specifics:

Please review the comments within the diffs; they provide context for some of the changes
Consistently applied data-next-template attributes on everything in the templates folder. I saw that this was partly implemented and thought it would be helpful to get it done so we can easily identify components from the browser as we develop

This also includes removing the data- attributes that pointed specifically to content-build templates to avoid confusion

Removes the unused custom <Link> component
Fixes some Typescript errors from the yarn build
Adjusts Medallia survey code to match the content-build implementation; we won't be able to test this code until it hits staging (known issue that Medallia doesn't work in lower environments than staging)

Design System specifics

Updates the design system library dependencies
Updates some components that had already been added to this repo but were out of date (and needed web components)

this reduces our ability to have full unit test coverage as you cannot simulate events on web components (this is a known issue in vets-website)

DST made adjustments made to the names of breakpoints to reduce reliance on the Formation library. These changes are in content-build and vets-website now but needed to be made in next-build (see VADS vs. USWDS values here)

Ticket

https://github.com/department-of-veterans-affairs/va.gov-cms/issues/19386

Developer Task
- [x] PR submitted against the `main` branch of `next-build`.
- [x] Link to the issue that this PR addresses (if applicable).
- [x] Define all changes in your PR and note any changes that could potentially be breaking changes.
- [ ] PR includes steps to test your changes and links to these changes in the Tugboat preview (if applicable).
- [x] Provided before and after screenshots of your changes (if applicable).
- [ ] Alerted the #accelerated-publishing Slack channel to request a PR review.
- [x] You understand that once approved, you are responsible for merging your changes into `main`. (Note that changes to `main` will move automatically into production.)

Testing Steps

[x] Validate that the Events / Events Listing templates are not negatively impacted by the upgrade to the latest component-library version
[x] Validated updated generator template for query test files

QA steps
What needs to be checked to prove this works?
What needs to be checked to prove it didn't break any related things?
What variations of circumstances (users, actions, values) need to be checked?
Screenshots
Mobile

Tablet

Desktop

Reviewer
Reviewing a PR
This section lists items that need to be checked or updated when making changes to this repository.
Standard Checks
- [ ] Code Quality: Readabilty, Naming Conventions, Consistency, Reusability
- [x] Test Coverage: 80% coverage
- [ ] Functionality: Change functions as expected with no additional bugs
- [ ] Performance: Code does not introduce performance issues

Merging an Approved Layout
When merging a layout, you must ensure that the content type has been turned on for next-build inside the CMS. This CMS flag must be turned on for editors to preview their work using the next build preview server.
Resource types (layouts) that have not been approved by design should NOT be pushed to production. Ensure that slug.tsx does not include your resource type if it is not approved.
The status of layouts should be kept up to date inside templates.md. This includes QA progress, development progress, etc. A link should be provided for where testing can occur.
Merging a Non-Approved Layout
Your new resource type should not be included inside slug.tsx. Items added here will go into production once merged into the main branch. It is imperative that we do not push anything live that has not been approved.
Ensure that this layout has been added to the templates.md file with the current status of the work.

Closing this and creating a new PR to target an integration branch instead.


Blocked scanlation groups still show as next chapter when reading manga

Steps to reproduce
Pick a manga with chapters from multiple scanlators.
Block one of the groups
Starting from a chapter by an unblocked group right before a chapter that is now blocked, scroll to the end of the chapter.
Expected behavior
Next: shows the first following unblocked chapter
Actual behavior
Next: shows the following blocked chapter
Crash logs
No response
Neko version
2.10.13
Android version
Android 12
Device
Samsung Galaxy S10e
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a short but informative title.
[X] I have tried the troubleshooting guide.
[X] I have updated the app to the newest version Latest.
[X] I have filled out all of the requested information in this form.

2.10.14


[v2.7] KDM Update for K8s January patch release

KDM Updates
TO BE RELEASED: OOB post v2.7.10

New Kubernetes Version
Min Rancher Version
Min RKE Version

1.26.13-rancher1-1
2.7.5-patch0
1.4.6-rc0

Rancher System Images & Add-ons
Note: Please update system images and add-ons in the template as needed.
TBD
Developer Changelog

Add templates for new K8s versions. If a template that hasn't been released yet already exists, update it in place.
Update the default K8s version, and add or update the version information (MinRancherVersion and MinRKEVersion) in k8s_version_info.go for new K8s versions if needed (Use table from above).
Confirm versions for system images, add-on templates are correct using versioning reference table from below (expand details to view the table). Update the table if new versions are introduced.
Confirm add-on template version constraints in template.go are correct using versioning reference table from below (expand details to view the table). Update the table if needed.

Versioning Reference

Expand for system images & add-on templates versioning table

Note: Truncated repository names with a * indicates there are multiple images with that prefix. All repository names that match a truncated prefix should be checked for the same version stated in the table.
For example: rancher/weave-* matches weaveworks/weave-kube and weaveworks/weave-npc, and they should both have the same version.
v1.26.13-rancher1-1

Repository
Tag

rancher/mirrored-coreos-etcd
v3.5.10

rancher/hyperkube
v1.26.13-rancher1

rancher/rke-tools
v0.1.96

rancher/mirrored-k8s-dns-*
1.22.28

rancher/mirrored-cluster-proportional-autoscaler
1.8.6

rancher/flannel-cni
v0.3.0-rancher8

rancher/mirrored-flannel-flannel
v0.21.4

rancher/mirrored-calico-*
v3.26.3

weaveworks/weave-*
2.8.1

noiro/* (All ACI images)
<IP_ADDRESS>.81c2369

rancher/mirrored-pause
3.7

rancher/nginx-ingress-controller
nginx-1.9.4-rancher1

rancher/mirrored-nginx-ingress-controller-defaultbackend
1.5-rancher1

rancher/mirrored-jettech-kube-webhook-certgen
v20231011-8b53cabe0

rancher/mirrored-metrics-server
v0.6.3

rancher/mirrored-coredns-coredns
1.9.4

rancher/mirrored-cluster-proportional-autoscaler
1.8.6

rancher/mirrored-k8s-dns-node-cache
1.22.28

Add-on Name
Add-on Template Version Constraint

Calico
calicov3261Rancher2

Canal
canalv3261Rancher2

Flannel
flannelv0214

CoreDNS
coreDnsv183Rancher2

KubeDNS
kubeDnsv116

MetricsServer
metricsServerv061

Weave
weavev122

Aci
aciv6032

NginxIngress
nginxIngressv194Rancher1

Nodelocal
nodelocalv121

Intermittently, fleet-agent panics on the k8s v1.28.6 node driver cluster and fails to recover. The related issue is documented here: https://github.com/rancher/rancher/issues/43012
For a workaround, please refer to: https://github.com/rancher/rancher/issues/43012#issuecomment-1926216418

Fresh install checks - PASS

On rancher version v2.7.10-rc7, KDM pointing to dev-v2.7-2024-01-patches branch, cluster creation succeeds for v1.26.13-rancher1-1 on all network providers - canal/flannel/weave/calico
Network checks look good
Canal network checks look good

Upgrade checks - PASS

On rancher v2.7.10-rc7, KDM pointing to release-v2.7, cluster creation succeeds for k8s v1.26.11-rancher2-2 version with all network providers.
Pre-upgrade checks look good.
KDM points to dev-v2.7-2024-01-patches branch.
Upgraded cluster to k8s versions - v1.26.13-rancher1-1.
Post upgrade checks look good.

RKE default k8s version - PASS
dev-v2.7-2023-07-patches should have the default as v1.26.13-rancher1-1
"RKEDefaultK8sVersions": {
  "0.3": "v1.16.3-rancher1-1",
  "default": "v1.26.13-rancher1-1"
 }

Minimum rancher version checks - PASS

On rancher v2.7.5 with KDM pointing to dev-v2.7-2023-07-patches branch, cluster creation succeeds for v1.26.13-rancher1-1 versions with all network providers.
Network checks look good.
Canal network checks look good.


handle long outputs

When I analyze a bigger codebase and it has a lot of warnings and errors I can not scroll back to the top of the output, so I loose some of that.
If I redirect the output to a file it is hard to read because of the ascii characters.

Thinking...

We can add a new cli flag to output to a file as csv or something.
But I have no idea for the console output

Perhaps the output can be md, HTML, json or anything

We can add a --condensed flag to output only the filename and number of errors
BTW changing the scan directory will end up smaller output
Maybe add a new flag to filter for filename patterns?

What if before the the main Object.keys... we check for the offenses array length and if it's greater than CONSOLE_DEFAULT_MAX_LINES we output just the condensed version you mentioned (filename : number of offenses : rules offended) And if this lower, we output as we usually do
The question would be how we define this CONSOLE_DEFAULT_MAX_LINES? Does it exist a number of lines where the output starts to crop itself? Do we make up one by try and error?

The math would be the 'offenses.length * 4" because we know for sure that per offense o next there are at least four lines being log in the output

On my system the terminal holds 1,000 lines of output.
On a bigger project I have 13,000 lines of output

Then it varies a lot. My approach is not an option

I was playing around with the output to have it more condensed and clear for long outputs.

This would be the output if the user uses the --output=table flag
I think it looks more organized then our default one, but currently has some problems what is solved in the current text output.
On the other hand it does not solve the long output problem. I tried on a test project with 3 files and a middle sized project with 202 files.

files
text output lines
table output lines

3
82
90

202
8,233
6,366

So the output saves 23% in the number of lines of the output, but far away from what fits to the console. So it does not really serves the goal of shorting the output.
@David-Pena what do you think?

Should we keep this output and solve the issues coming with it?
Should we use this as the default output instead of text?
Should we have a plainText output what can be used to redirected into a file, what does not contain the ascee escape characters, so it is more readable?
Should we have a plainTable output for the same reason?
For this I had to change the output object and I think it would server better our json output. So we could keep that even if we do not keep this output.

If you want to check out the code it is here: https://github.com/rrd108/vue-mess-detector/tree/table-output

but currently has some problems what is solved in the current text output.

What problems?

Should we have a plainText output what can be used to redirected into a file, what does not contain the ascee escape characters, so it is more readable?
Should we have a plainTable output for the same reason?

I don’t get the goal of a plainText/plainTable output ⬆

What problems?

Group by file not ready yet and text output is ruined

I don’t get the goal of a plainText/plainTable output ⬆

If you run
yarn analyze > output.txt

The file will be hardly readable now because of the ascii codes.

I think the default one should be text as its our most stable one...
Let's keep the --output=table and add issues to fix the bugs to have at the same level of the default text option
For the export as a file option, I think it only makes sense to have it for the table output

The file will be hardly readable now because of the ascii codes.

Lets create a helper function to remove all ASCII codes to be used when needed 💡

Thanks.
I will continue the work on table output.

I think now with the new file output this is solved.
Long output in console still unsolved but by my understanding it is something what we can not really solve.


Inconsistent percent-encoding of keys

My Environment

ArangoDB Version:        3.7.3
Storage Engine:             RocksDB
Deployment Mode:       Single Server
Deployment Strategy:   Manual Start in Docker
Configuration:               Default
Infrastructure:               own
Operating System:        Ubuntu 20.04
Total RAM in your machine:        32Gb
Disks in use:                  SSD
Used Package:              Docker - official Docker library

Component, Query & Data
Affected feature:
AQL query using web interface
AQL query (if applicable):
insert
{
"_key": "test_%25"
}
into collection_name

Steps to reproduce

Insert document containing percent-encodable key (e.g. test_%25)
Attempt retrieval of the document in collection view or through rest api

Problem:
There is inconsistent percent-encoding happening. Documents are inserted correctly as given, but on retrieval are decoded.
I first noticed this problem when searching for a document by key in the collections view. The document was found, but when I click to open it up I get a DocumentNotFoundError. Manually fixing the key encoding in the URL results in the expected document (e.g. .../collection/collection_name/test_%2525)
Expected result:
Encoding (or lack-thereof) is consistent across insert and retrieval

Hi @rthill91,
that sound's correct to me. Percent-encoding (also known as URL encoding) is necessary only in the URL.
If you disagree, please describe in more detail what you're doing, what the result is, and what you find unexpected about the result.

The only aspect of this I think is an arangodb issue is what I mentioned about opening documents from the collection view of the web interface. A document with a key containing a substring that looks like a percent-encoded value will not open correctly.

RETURN collection_name // [ [ { "_key": "test_%25" } ] ]

Clicking on the document results in:

Same error if you create an edge with key %25. The key is correctly set to %25 however.
It also displays the name incorrectly, and the _from/_to links are broken (same error as above):

Below function tries to decode the URL with the key not encoded first, and if it fails, it encodes the key. This test doesn't work because test%25 decodes to a valid URL test%:
js\apps\system_admin\aardvark\APP\frontend\js\views\documentsView.js
    goToDocument: function (error, data, msg) {
      if (error) {
        arangoHelper.arangoError('Error', msg.errorMessage);
      } else {
        window.modalView.hide();
        data = data.split('/');

        var url;
        try {
          url = 'collection/' + data[0] + '/' + data[1];
          decodeURI(url);
        } catch (ex) {
          url = 'collection/' + data[0] + '/' + encodeURIComponent(data[1]);
        }

        window.location.hash = url;
      }
    },

I'm not sure why it isn't encoded by default.

The only aspect of this I think is an arangodb issue is what I mentioned about opening documents from the collection view of the web interface. A document with a key containing a substring that looks like a percent-encoded value will not open correctly.

Ah, I see. That's not right, of course.

I'm not sure why it isn't encoded by default.

That looks strange indeed, and I'd expect it to be unconditionally encoded, too.

This one is even weirder:
js\apps\system_admin\aardvark\APP\frontend\js\views\documentView.js:
      var navigateTo = $(e.target).attr('documentLink');
      var test = (navigateTo.split('%').length - 1) % 3;

      if (decodeURIComponent(navigateTo) !== navigateTo && test !== 0) {
        navigateTo = decodeURIComponent(navigateTo);
      }

      if (navigateTo) {
        window.App.navigate(navigateTo, {trigger: true});
      }

Should be fixed as of 3.9.0 by https://github.com/arangodb/arangodb/pull/14700


Exposed more input functionality

Hi, I've been using your wrapper for a little project I'm working on and adding missing functionality as I go. I've exposed float and int array inputs and color inputs so far. This is still a work in progress, I'm continuing to add stuff as I need it.
I've added macros to reduce some of the code duplication, but due to small differences between all of these functions there's still a bit of duplication.
At the moment the demo code I've added reuses the same members for different inputs, I'll probably change this at some point so there's a dedicated struct for each section of the demo.
Naming wise I named functions like input_float2, input_int3 before I noticed the single value versions were input_f32, input_i32 etc. I've stuck with the original imgui names though, because input_f32_2 looks weird and is painful to type, also I figure staying closer to the original API is probably better where possible even though it's less Rusty.
In doing all this I have some observations about the API:

Having to im_str! everything is a pain, I guess it's unavoidable, that _ just makes it twice as annoying to type though.
Because of the builder pattern being used to handle optional parameters, there is a lot of boiler plate required to expose new functions. This doesn't affect people using the library so much, but I do feel having to call build() after some functions is a bit unintuitive and could be easy to forget.

On the latter point I'm temped to experiment with changing the API to have a default function call (e.g. input_float) and a function call which can take a parameters struct (e.g. input_float_with or input_float_ex), the struct would be similar to the existing builder structs. The advantage of this is it's less boilerplate to add, you don't have to call build and you can reuse the same parameters between different calls (often you want the same parameters anyway). Of course all of this will be unnecessary if Rust gets default parameters one day.

Thanks! I'll take a look during the weekend.

that _ just makes it twice as annoying to type though.

We could rename it to imstr!. It's not consistent naming, but could be a reasonable compromise.

having to call build() after some functions is a bit unintuitive and could be easy to forget

#[must_use] guarantees a compiler warning if that happens. When I added it, I found out I had forgotten to call build() sometimes in the test_window_impl example ;)

#[must_use] guarantees a compiler warning if that happens. When I added it, I found out I had forgotten to call build() sometimes in the test_window_impl example ;)

Ah, I was wondering what that did :)

Having to im_str! everything is a pain

My PR #19 changes everything to use Into :)

@Gekkio any feedback on these changes?

Removed implementation of combo as master got it's own implementation.

Sorry, I totally forgot about this pull request!
There's still stuff missing, so I thought you were still working on it.
I feel a bit conflicted about the macros...It does reduce code duplication, but I can't shake the feeling that there could be a better way to do that with traits and type parameters. However, I can't yet see in my mind how the API would look like, so let's keep the macros for now.

There's still stuff missing, so I thought you were still working on it.

Ah right, I just added some things I needed at the time. Sorry I wasn't clearer.

I feel a bit conflicted about the macros...It does reduce code duplication, but I can't shake the feeling that there could be a better way to do that with traits and type parameters. However, I can't yet see in my mind how the API would look like, so let's keep the macros for now.

Possibly the flags could be done with generic traits rather than macros, although that would make the trait part of the interface which I think is a bit confusing since really it's an implementation detail. I don't think the impl_input_intn and impl_input_floatn macros could be done with generics in Rust.
In any case, I'll leave the macros as is for now.

Alrighty! Just one last thing: I think we should remove the input_f32 and input_i32 functions, because they are just duplicates. I agree with your reasoning about f32_4 vs float4, and I'd much rather change the existing ones (e.g. slider_i32) to match these new ones.

Done. It's unfortunate that f32_4 etc. are not nice to type, otherwise it would have been good to stick with the Rust type names.

Thanks! Merging now


Calendar "day" mode doesn't work in simulator

I am trying to implement the Calendar in "day" mode with the following data as events:
[
{"color": "#EFE3FF",
"end": 2024-07-20T12:57:50.000Z,
"id": "6697b1dadb73fba7bd9a37a5",
"start": 2024-07-20T11:57:50.000Z,
"title": "Investor meet"
}
]
But this is what I get:

React Native: 0.73.6.
I am using an iPhone XR simulator with IOS 17.5

I changed the events to this:
[{"end": 2024-07-20T12:57:50.000Z, "start": 2024-07-20T11:57:50.000Z, "title": "Investor meet"}].
Also, this is the way I use the component.
import {Calendar} from "react-native-big-calendar";
<Calendar events={taskListReformatted} height={650}
date={startDate}
activeDate={startDate}
mode={"day"} />

I have solved this myself.


System.TypeInitializationException

01:32:24.509    [ERROR][ResoniteModLoader] Unexpected exception initializing mod from /home/steam/Steam/steamapps/common/Resonite/Headless/rml_mods/HeadlessTweaks.dll:
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
 ---> System.TypeInitializationException: The type initializer for 'HeadlessTweaks.HeadlessTweaks' threw an exception.
 ---> System.TypeLoadException: Could not load type 'SkyFrost.Base.SessionAccessLevel' from assembly 'SkyFrost.Base, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null'.

Seems to be broken on the new version..

Never mind.  I was still running 2.1.3
Looks like 2.1.4 already fixed it...


Generated GET requests include a content-type instead of an accept header [bug]

When using the Elements API Viewer, which uses this project, the OpenAPI document here returns the following:
curl --request GET \
  --url /apis \
  --header 'Content-Type: application/json' \
  --header 'correlation-id: '

When we'd expect to see an Accept header here.

so I looked into this and I think I understand the problem.  It's to do with application/vnd.uk.gov.api.v1alpha+json: being a file schema ref on another file, if I had to guess.
To work on this, what we'd really need to see is the HAR format that Elements passes to HTTPSnippet, because I have a strong suspicion that there is where the problem lies.  I believe that HTTPSnippet is not being passed the headers somewhere in the conversion from OpenAPI to HAR, because otherwise the headers would be present.
Ultimately, since HTTPSnippet doesn't deal with OpenAPI documents at all (only the HAR format) I don't think we're going to be able to do anything about this.  I'm not sure who you would follow up on the stoplight side, maybe @philsturgeon?

@jamietanna see you on APIs You Wont Hate Slack, and I'll point you in the right direction.
Thanks @dimitropoulos!


Ipfix from Vmware

I have an ESX Server configured to send IPFIX flows to vflow server (installed on a Centos using the latest RPM version: 0.6.5), but no flows are sent to the MQ,
I can see the following errors in Vflow log:

IPFIX element key (890) not exist
IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 Multiple errors:
IPFIX element key (890) not exist
IPFIX element key (890) not exist
IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 Multiple errors:
IPFIX element key (890) not exist
IPFIX element key (890) not exist
IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 IPFIX element key (890) not exist
[vflow] 2018/09/17 11:47:17 Multiple errors:
IPFIX element key (890) not exist
IPFIX element key (890) not exist
IPFIX element key (890) not exist

Looking at the code it looks like there are no fatal errors so I am not sure why other fields are not being parsed/sent to the MQ.
attached is the pcap file from the Vmware server
ipfix.zip

Probably adding the elements specified in
https://docs.vmware.com/en/VMware-NSX-for-vSphere/6.4/com.vmware.nsx.admin.doc/GUID-40805D0E-8A97-4011-B85C-CBF37812DBB5.html
To the new ipfix.elements file
Will fix the issue I’ll give it a try.

Yes pls add it to ipfix.elements and restart the vflow

So I added the elements to the ipfix.elements  file and I started to get the this error
"[vflow] 2018/09/20 15:01:03 IPFIX element key (210) not exist", which is strange as 210 is a known element also defined in the ipfix.elements file.
After some debugging I noticed element 210 is always sent after an element which its PEN is set,
and the function func (tr *TemplateRecord) unmarshal(r *reader.Reader)
usesthe same TemplateFieldSpecifier for unmarshaling all fields specifieres, once the PEN is set a field specifier it never gets clean and all known IPFIX elements after this element have their PEN set to the previous enterprise number (Vmware in this case).
I modified the function func (f *TemplateFieldSpecifier) unmarshal(r *reader.Reader) error  in ipfix/decoder.go
to
func (f *TemplateFieldSpecifier) unmarshal(r *reader.Reader) error {
var err error
if f.ElementID, err = r.Uint16(); err != nil {
	return err
}

if f.Length, err = r.Uint16(); err != nil {
	return err
}

if f.ElementID > 0x8000 {
	f.ElementID = f.ElementID & 0x7fff
	if f.EnterpriseNo, err = r.Uint32(); err != nil {
		return err
	}
**}else {
	f.EnterpriseNo = 0;
}**

return nil

}
and the issue has been resolved.


CLI Windows 10 Command line

I am not an expert at all with python scripts or using command line.
I have tried many ways to get ScribusGeneratorCLI to run from command line.
The only result I get is that it opens the CLI script.
What am I doing wrong?
I have Scribus 1.4.6, Windows 10 (x86)
Thanks in advance!

Solved: needed to change python as default program for .py files. (Was set on Notepad).

glad you solved it. hope you like it.


Why was RunProxy(path, delegate) made obsolete?

The change I'm referring to is this:
https://github.com/damianh/ProxyKit/commit/c09519887d2fdca65c5fecd3e270e1870331e960
We're using it quite actively and I'd just like to understand if there was any underlying issues or it was to keep the API slim.

Hi @abergs,
As you can see from that commit it was just an extension method that called .Map() followed by UseMiddleware(). Yes I desire to keep the API slim. I wasn't happy about basically hiding a well documented AspNetCore method with an unfamiliar one that didn't really provide any value and (arguably) made things less explicit. Users may want do other bits of work in the mapped path application builder delegete just above this line before ProxyKit is invoked.
If you want to keep your code intact, it would be easy to add the extension method to your own code.

	Thank you for taking the time to elaborate. I support your decision.

	Get Outlook for iOS

On Sat, Nov 16, 2019 at 9:26 PM +0100, "Damian Hickey"<EMAIL_ADDRESS>wrote:
Hi @abergs,
As you can see from that commit it was just an extension method that called .Map() followed by UseMiddleware(). Yes I desire to keep the API slim. I wasn't happy about basically hiding a well documented AspNetCore method with an unfamiliar one that didn't really provide any value and (arguably) made things less explicit. Users may want do other bits of work in the mapped path application builder delegete just above this line before ProxyKit is invoked.
If you want to keep your code intact, it would be easy to add the extension method to your own code.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or unsubscribe.

Thank you.


[Request] Config option to disable "edit config" terminal command

I'm generally concerned about client desyncs, and this seems like a potential issue in lobbies.  Moreover, it's not something I would expect our group to use during a game.
Is it possible to get a config option to disable this command?
Thanks for the consideration

@ajsglist There shouldn't be any desync problems. Only Sell Settings and Advanced Sell Settings are synced to all clients from the host. Only the host can change these settings in the terminal config editor. The changes get sent to all clients whenever the host changes synced config settings. Clients will also receive the synced config settings from the host whenever they join the game.
The config editor is mainly used for making changes to the dontSellListJson config setting.
With this, you can specify any scrap item you don't want the sell algorithm to use. (This works with modded scrap items)
However, I will consider adding this as a config setting.
And if you do experience any desync problems, please let me know.


Install fails in PHP 8.1

Even after removing composer.lock, after running composer require --dev mamuz/php-dependency-analysis, following error happens:
Cannot use mamuz/php-dependency-analysis's latest version v2.0.2 as it requires php ^7.3 which is not satisfied by your platform.
./composer.json has been updated
Running composer update mamuz/php-dependency-analysis
Loading composer repositories with package information
Updating dependencies
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - mamuz/php-dependency-analysis[v0.0.1, ..., v0.1.3] require symfony/console 2.5.* -> found symfony/console[v2.5.0, ..., v2.5.12] but it conflicts with your root composer.json require (^6.2).
    - mamuz/php-dependency-analysis[v0.2.0, ..., v0.5.0] require symfony/console 2.6.* -> found symfony/console[v2.6.0, ..., v2.6.13] but it conflicts with your root composer.json require (^6.2).
    - mamuz/php-dependency-analysis[v0.5.1, ..., v0.6.0] require symfony/console ~2.5 -> found symfony/console[v2.5.0, ..., v2.8.52] but it conflicts with your root composer.json require (^6.2).
    - mamuz/php-dependency-analysis[v0.6.1, v1.0.0, ..., v1.2.0] require symfony/console ~2.5|~3.0 -> found symfony/console[v2.5.0, ..., v2.8.52, v3.0.0, ..., v3.4.47] but it conflicts with your root composer.json require (^6.2).
    - mamuz/php-dependency-analysis[v1.3.0, ..., v1.3.1] require php ^5.6 || ^7.0 -> your php version (8.1.11) does not satisfy that requirement.
    - mamuz/php-dependency-analysis[v2.0.0, ..., v2.0.2] require php ^7.3 -> your php version (8.1.11) does not satisfy that requirement.
    - Root composer.json requires mamuz/php-dependency-analysis * -> satisfiable by mamuz/php-dependency-analysis[v0.0.1, ..., v0.6.1, v1.0.0, ..., v1.3.1, v2.0.0, v2.0.1, v2.0.2].

@fabpico This package is a bit outdated and only support PHP 7
See https://github.com/mamuz/PhpDependencyAnalysis/blob/v2.0.2/composer.json#L30 or even master branch !
Your platform is PHP 8.1.1
- mamuz/php-dependency-analysis[v2.0.0, ..., v2.0.2] require php ^7.3 -> your php version (8.1.11) does not satisfy that requirement.

So it's impossible to install latest version ! But You should be able to install v1.2.0
Check constraint with an online semver tool, if you're not sure : https://jubianchi.github.io/semver-check/#/constraint/^7.3

If you really want to install v2.0.2 (latest) at your own risk, you could bypass platform verification with composer.
composer require --dev --ignore-platform-req=php mamuz/php-dependency-analysis

I am just asking to update the package compatibility to 8.1.


Hiring column

I mentioned this briefly on Reddit a while back. Since this involves volunteer effort, I would skip the hiring column. People won't want to keep synchronizing it with their status, and I generally get the sense that most are willing to hire senior devs. So hiring really means actively hiring less experienced people. I think it is okay to ask readers of the list to follow a link to the company's site to determine if they are hiring currently.

Yeah, I have been thinking about this as well. It's a lot of work to keep the hiring status of each company up to date.

Maybe in the future, it could become "channel for job adverts", with options like "haskell reddit, functionaljobs, company website, ..."


gcc: if langAda then propagate brokenness from gnatboot

Description of changes
This commit causes gcc${version}.meta.broken to become true if langAda and gnatboot.meta.broken.  This means that marking any part of the gnatboot chain broken will propagate the broken attribute through the chain of gnat6,gnat9,gnat10,gnat11,gnat12 builds.
This commit does not mark any packages as broken.  It simply automates the propagation of brokenness so downstream packages can respond intelligently (e.g. #173808)
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

I don't think we really need this; ideally GNAT never regresses again. A fix for the GNAT 6 problem is in staging, the thing we should do is search for a replacement for gnatboot: Gentoo doesn't use it anymore and has even deleted it from its mirrors. I have no clue what debian does (maybe the previous version of the package?).
Gentoo uses gnat-community / gnat-gpl from AdaCore, but I don't think their bindist useable for our purposes, really: It requires running some kind of installer that depends on a bunch of libraries, including X11 and dbus – so this would be a painful bootstrapping chain.
I wonder if you may have any insight?

Ok.


[Improve] Bloom bright extraction

from the source code in extractHighlights.fx:
https://github.com/BabylonJS/Babylon.js/blob/ae19ec8facd1ceec0b449a31fd1f8d2415d757ce/src/Shaders/extractHighlights.fragment.fx#L12-L13
step only returns 0 / 1, so the result you will get is kind of toon rendering:

test code for this image result (BBL version):
const float uThreshold = 1.;
const float uExposure = 1.;
const vec3 LuminanceEncodeApprox = vec3(0.2126, 0.7152, 0.0722);
vec3 extractBright1(const in vec3 color) {
    float lum = clamp(dot(color * uExposure, LuminanceEncodeApprox), 0., 1.);
    return step(uThreshold, lum) * color;
}

and actually this result can be improved like this:

test code for this new result:
const float uThreshold = 1.;
const float uExposure = 1.;
const vec3 LuminanceEncodeApprox = vec3(0.2126, 0.7152, 0.0722);
vec3 extractBright2(const in vec3 color) {
    float lum = dot(color * uExposure, LuminanceEncodeApprox);
    return clamp(color * clamp(lum - uThreshold, 0.0, 1.0), 0.0, 1.0);
}

i set the uThreshold as 1. because normally only the color which exceeds from 1. will glow, especially for HDR. (in BBL default 0.9)

I guess it is normally not a big issue as it goes through several passes of blur after extraction but would you be willing to create a PR and add a special mode for it ?
So the bloom could have a "softer" flag for this one preventing any back coompat issues ?

Closing as we want tech discussion to happen on the forum (for discoverability reasons)


Compiler error: 'destructures cannot participate in a recursive group; it's always a type error

Hey! I'm trying out roc for AOC 2022 and don't know the syntax all that well, so that could be the cause. I'm coming from Elm and assuming most of the syntax carries through.
The 100 lines that crash is here, but I'm not doing any recursion as far as I can tell, so I'm not sure where the error is coming from.
Line 16 used RPS a = ... instead of RPS a : ... when defining a custom type, causing the crash.
An internal compiler expectation was broken.
This is definitely a compiler bug.
Please file an issue here: https://github.com/roc-lang/roc/issues/new/choose
thread '<unnamed>' panicked at 'destructures cannot participate in a recursive group; it's always a type error', crates/compiler/can/src/def.rs:1635:29
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

I also hit this. The repro is:
# Repro.roc
interface Repro
    exposes []
    imports []

T a b = (a, b)

I'm on roc version
roc nightly pre-release, built from commit ad78e04 on Mi 20 Mär 2024 09:02:16 UTC

I can reproduce with roc check Repro.roc, which hangs the compiler, and with RUST_BACKTRACE=full yields
An internal compiler expectation was broken.
This is definitely a compiler bug.
Please file an issue here: https://github.com/roc-lang/roc/issues/new/choose
thread '<unnamed>' panicked at 'destructures cannot participate in a recursive group; it's always a type error', crates/compiler/can/src/def.rs:1655:29
stack backtrace:
   0:     0x557003375966 - <unknown>
   1:     0x5570026bf2cf - <unknown>
   2:     0x557003371127 - <unknown>
   3:     0x557003375775 - <unknown>
   4:     0x557003376f13 - <unknown>
   5:     0x557003376cd4 - <unknown>
   6:     0x557003377416 - <unknown>
   7:     0x5570033772f4 - <unknown>
   8:     0x557003375d66 - <unknown>
   9:     0x5570033770a2 - <unknown>
  10:     0x5570025bbe03 - <unknown>
  11:     0x55700296100c - <unknown>
  12:     0x557002dc65b1 - <unknown>
  13:     0x557002d48ed0 - <unknown>
  14:     0x557002d450ee - <unknown>
  15:     0x557002d485b7 - <unknown>
  16:     0x55700337cd25 - <unknown>
  17:     0x7ff1c711c609 - start_thread
                               at /build/glibc-wuryBv/glibc-2.31/nptl/pthread_create.c:477:8
  18:     0x7ff1c6bfe353 - clone
                               at /build/glibc-wuryBv/glibc-2.31/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95
  19:                0x0 - <unknown>

Let's format this panic more nicely and add a tip to it for starters. The tip should state something like "Tip: did you try to use = instead of : to define a type?".

Thanks for helping out @VivianWilde!
Your assumptions are correct :)

I noticed that the type alias resolution here basically checks for if an alias is self recursive.
Would it be a bad solution to just implement a similar check in the sort_can_defs function around here, and trigger a user-facing "Tip" error message if the def is self-recursive and a "compiler error" if the error is something more nuanced? I'm a little new to language/compiler stuff so still getting a hang of the subtleties, so I wanted to ask if this would break anything or otherwise be bad design.

I noticed that the type alias resolution here basically checks for if an alias is self recursive.
Would it be a bad solution to just implement a similar check in the sort_can_defs function, and trigger a user-facing Tip error message if the def is self-recursive and a compiler error if the error is something more nuanced? I'm quite new to language/compiler stuff so still getting a hang of the subtleties, so I wanted to ask if this would break anything or otherwise be bad design.

That seems alright to me, can you confirm @folkertdev?


Retrieving ADE elements using JSON output format

Hi,
I am successfully able to retrieve ADE elements with WFS with output format as XML. Is this also possible with JSON? I tried but failed.
Thanks

Many thanks for your reply Claus ! I am using Energy ADE from https://github.com/3dcitydb/energy-ade-citydb.
XML endpoint:
https://w2-8080.iaf-ex.hft-stuttgart.de/citydb-wfs/wfs?SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&TYPENAMES=bldg:Building
JSON endpoint:
https://w2-8080.iaf-ex.hft-stuttgart.de/citydb-wfs/wfs?SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&TYPENAMES=bldg:Building&OUTPUTFORMAT=application/json

Thanks. ADE content is only exported in CityJSON format if CityJSON support has been implemented for the corresponding ADE extension.
Unfortunately, this is not the case for the Energy ADE extension that you are using.
Gesendet von Outlook für Androidhttps://aka.ms/AAb9ysg

From: RushiMUFC @.>
Sent: Thursday, September 12, 2024 5:17:46 PM
To: 3dcitydb/web-feature-service @.>
Cc: Claus Nagel @.>; Comment @.>
Subject: Re: [3dcitydb/web-feature-service] Retrieving ADE elements using JSON output format (Issue #15)
Many thanks for your reply Claus ! I am using Energy ADE from https://github.com/3dcitydb/energy-ade-citydb.
XML endpoint:
https://w2-8080.iaf-ex.hft-stuttgart.de/citydb-wfs/wfs?SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&TYPENAMES=bldg:Building
JSON endpoint:
https://w2-8080.iaf-ex.hft-stuttgart.de/citydb-wfs/wfs?SERVICE=WFS&VERSION=2.0.0&REQUEST=GetFeature&TYPENAMES=bldg:Building&OUTPUTFORMAT=application/json
—
Reply to this email directly, view it on GitHubhttps://github.com/3dcitydb/web-feature-service/issues/15#issuecomment-2346587000, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABKDA77YG4NEBNDOZYN33YDZWGWBVAVCNFSM6AAAAABODOE5T6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNBWGU4DOMBQGA.
You are receiving this because you commented.Message ID: @.***>

I got it; thank you so much for your feedback!


Should '@' be allowed as a character in identifiers?

It is currently allowed in the lexer.
IMO, it would be convenient if it were disallowed since then one could write things like f x@i instead of f x @ i or f x @i to idiomatically emphasize that @ as an operator binds tighter than function application, working around the fact that parens are currently not allowed around arguments to functions.

I think it should not be allowed; probably the only reason it's in there is I copied and pasted the beginning of the lexer from something else (lol!).


Support integration of n 3rd party TagStores

Postpone?

close since no need, we are moving towards a more central tagging solution


How to wrap a C data struct into a functor with the data type as a parameter.

Sorry for the title.
I want try to create a functor that is based on a C doubly linked list, and this functor could create some modules for creating, using, deleting OCaml (I don't know if it is possible).
For now I have this :
module type DataTypes = sig
  type t
  type ctype
  val t_typ : ctype Ctypes.typ
end

module Make(Data : DataTypes) = struct
  type glist
  let glist : glist structure typ = structure "GList"
  type data = Data.t
  let data = Data.t_typ

  let glist_data  = field glist "data" (ptr data)
  let glist_next  = field glist "next" (ptr_opt glist)
  let glist_prev  = field glist "prev" (ptr_opt glist)
  let () = seal glist

  let free =
    foreign "g_list_free" (ptr_opt glist @-> returning void)

  let append dllist element =
    let append_raw =
      foreign "g_list_append" (ptr_opt glist @-> ptr data @-> returning (ptr_opt glist))
    in
    match dllist with
    | Some _ -> append_raw dllist element
    | None -> let dllist' = append_raw dllist element in
      let _ = Gc.finalise free dllist' in
      dllist'

  let prepend dllist element =
    let is_start = match dllist with
    | None -> true
    | Some node -> match getf (!@node) glist_prev with
      | None -> true
      | Some _ -> false
    in
    if is_start then begin
      let prepend_raw =
        foreign "g_list_prepend" (ptr_opt glist @-> ptr data @-> returning (ptr_opt glist))
      in
      match dllist with
      | Some _ -> prepend_raw dllist element
      | None -> let dllist' = prepend_raw dllist element in
        let _ = Gc.finalise free dllist' in
        dllist'
      end
    else
      raise (Invalid_argument "The element is not the start of the list")

  let remove =
    foreign "g_list_remove" (ptr_opt glist @-> ptr data @-> returning (ptr_opt glist))

  let first =
    foreign "g_list_first" (ptr_opt glist @-> returning (ptr_opt glist))

  let last =
    foreign "g_list_last" (ptr_opt glist @-> returning (ptr_opt glist))

  let length =
    foreign "g_list_length" (ptr_opt glist @-> returning uint)

  let previous = function
    | None -> None
    | Some dllist_ptr ->
        getf (!@dllist_ptr) glist_prev

  let next = function
    | None -> None
    | Some dllist_ptr ->
        getf (!@dllist_ptr) glist_next

  let data = function
    | None -> None
    | Some dllist_ptr ->
        let data_ptr = getf (!@dllist_ptr) glist_data in
        Some (!@data_ptr)
end

It works when I create a Doubly Linked list of integer :
module Int_list =
    GLib.Dllist.Make(struct
                    type t = int
                    type ctype = int
                    let t_typ = int
                  end)

https://github.com/cedlemo/OCaml-GLib2/blob/master/tests/test_dllist.ml
The problem comes when I try to create a Doubly Linked list of string:
module String_list =
    GLib.Dllist.Make(struct
                    type t = string
                    type ctype = string
                    let t_typ = string
                  end)

if I do the following:
let s_one = allocate string "one"
let s_two = allocate string "two"
let s_three = allocate string "three"

let build_string_dllist () =
  let dllist = String_list.append None s_one in
  let dllist = String_list.append dllist s_two in
  String_list.append dllist s_three

let test_list_string_previous_next test_ctxt =
  let dllist = build_string_dllist () in
  let prev = String_list.previous dllist in
  let _ = match String_list.data prev with
    | None -> assert true
    | Some v -> assert_failure "The prev node not should have data"
  in
  let next = String_list.next dllist in
  let _ = match String_list.data next with
    | None -> assert_failure "The next node should have data"
    | Some v -> assert_equal_string (!@ s_two) v
  in
  let prev = String_list.previous next in
  match String_list.data prev with
  | None -> assert_failure "The prev node should have data"
  | Some v -> assert_equal_string (!@ s_three) v

My tests fail with some random values. I guess that it is related to the fact that the string type in Ctypes is a view. Have you got any idea how I can solve this or if it is possible ?

Your guess is a good one: the string type isn't appropriate here, since it doesn't give you control over the lifetime of the associated C object.
The best way to accomplish what you want is to use char ptr or the bigarray interface as the list element type, and explicitly deallocate the object when it's no longer needed --- presumably no sooner than the point at which it's removed from the list.

Even if all the storage or access of the string can be done with char ptr or bigarray, it remains the question of the transformation of strings values to those types or from those types.
For example, I searched in Ctypes functions to get a string from a char ptr and a char ptr from a string and I found this in Ctypes_std_views_stubs.ml :
(* Convert a C string to an OCaml string *)
external string_of_cstring : char Ctypes_static.typ Ctypes_ptr.Fat.t -> string
   = "ctypes_string_of_cstring"

(* Convert an OCaml string to a C string *)                                                                                external cstring_of_string : string -> Ctypes_memory_stubs.managed_buffer
   = "ctypes_cstring_of_string"

Do I have to write this kind of functions  (I have not seen them in the documentation) or are there any other functions ?
In the same way I did not found a lot of documentation that could help me to transform a bigarray of char into a string or a string to a bigarray of char (there is the last part here that seems interesting http://lists.ocaml.org/pipermail/ctypes/2015-December/000192.html). Did I miss something ?

The easiest approach is to use memcpy.

@yallop,
I did not found any documentation on how to use Memcpy with a char ptr. My problem is that I still think in C I guess I am stuck with this:
let string_to_char_ptr str =
  let open Memcpy in
  let len = String.length str in
  let dst = allocate_n char (len + 1) in
  let src = Bytes.of_string str in
  let _ = unsafe_memcpy ocaml_bytes pointer ~src ~dst ~len in
  dst

let char_ptr_to_string _ptr =
  let open Memcpy in
  let len = 4 in
  let buf = Bytes.make len '\000' in
  let _ =  begin
      for i = 0 to len - 1 do
        let c = !@(_ptr +@ 1) in
        Bytes.set buf i c
      done
    end
  in Bytes.to_string buf

let test_char_ptr_converters' test_ctxt =
  let str = "abcd" in
  let char_ptr = string_to_char_ptr str in
  let str' = char_ptr_to_string' char_ptr in
  assert_equal_string str' str

I use Memcpy.unsafe_memcpy because I want to copy to a destination identified by a pointer and I though that basically Memcpy.unsafe_memcpy will behave like the C memcpy.
My test always finishes with an empty string. I tried to tweak the Memcpy.unsafe_memcpy with some ~src_off and ~dst_off (in an empiric way) and was able to have a aaaa string from an initial "abcd". I think that there is some (a lot) subtleties that I don't understand.
Could you give me some hints ?

You're on the right lines, but there a couple of small issues.
First, the following call does nothing because it's a partial application -- not all arguments are supplied:

let _ = unsafe_memcpy ocaml_bytes pointer ~src ~dst ~len in

You can either supply the missing arguments (src_off and dst_off), or call the function without labels.  In either case it's a good idea to bind the result to () rather than _ to ensure that the result has type unit, which guarantees that there aren't any missing arguments:

let () = unsafe_memcpy ocaml_bytes pointer src dst len in

Second, in the following, +@ 1 should be +@ i:

        let c = !@(_ptr +@ 1) in

Those two changes should be sufficient to get things working (assuming that char_ptr_to_string' is a typo for char_ptr_to_string).
Finally, here's an alternative, more efficient, implementation of char_ptr_to_string that uses memcpy rather than a loop:
let char_ptr_to_string _ptr =
  let open Memcpy in
  let len = 4 in
  let buf = Bytes.make len '\000' in
  let () = unsafe_memcpy pointer ocaml_bytes _ptr buf len in
  Bytes.to_string buf

thank you @yallop.


Add bdbag and setuptools scm.

Just noticed this built Python 2 only wheels for bdbag, opened a PR to upstream project to default to universal wheels. https://github.com/fair-research/bdbag/pull/19.


Refactoring the Container struct…

… and thus Service too (with some other stuff) 🐍.
Overall the struct is way lighter, less intelligent and make way less
call. A Container now holds only a client, name, id and an actual
types.ContainerJSON docker container struct.

This removes service and Project/events.Notifier.
There is several way to create a Container:

Create an actual container with CreateContainer
Create a container from an existing one, with either New or
NewInspected.

Thus, removing any Create* method (use CreateContainer instead).
Move service related method into services (Recreate, Delete,
OutOfSync, anything related to Create).
Remove findExisting and calls, the same with withContainer which
are not needed anymore.
Create a service_create.go file with service container creation
code (because it was a lot)
Update Service methods to use this updated Container struct.
Makes Scale on service less flaky but not doing it in parallel (for
now at least)

There is some improvements to come next :

Container could (and should) be on its own docker/container
package.
Service will have to be refactor next (by removing dependencies on
project).
Move Service into its on docker/service package and split
service.go into several smaller files.

Note that Service and Container need an overall godoc rework, it's on my TODO :angel:
/cc @joshwget
🐸
Signed-off-by: Vincent Demeester<EMAIL_ADDRESS>

This is a pretty nice improvement in readability and I really like that logic is being shifted from Container to Service.
So far everything looks good to me, but it's also difficult to predict the effects this will have when using libcompose as a library. It would be great if we could start adding API tests along with refactoring, especially since it sounds like there's plenty of refactoring to do.

So far everything looks good to me, but it's also difficult to predict the effects this will have when using libcompose as a library. It would be great if we could start adding API tests along with refactoring, especially since it sounds like there's plenty of refactoring to do.

It depends on how libcompose was used :angel:. If it's only used on the surface (like I do on libkermit), this doesn't change a thingk But it defenitely could. These refactoring aim to make it better and simpler for libcompose to be used as a library and even smallest part (like why not only use the Container struct, etc…).
Anyway I completely agree we should write more API tests, and more tests in general. My ideas are the following :

Any package should be small and heavily tested. If it's not easy to write test, then it needs refactoring :angel:.
There should be way more unit tests than integration tests. And Integration tests on libcompose should focus on the API side. (Note: I'm thinking of trying out convey as a lib to write tests, as an experiment :angel:)
We should have almost no integration tests for the cli side as they should be handled by the acceptance tests suite comming from docker/compose :wink:

That all sounds great! Relying on the Docker Compose acceptance tests for the CLI is a really good idea.
Looks like you need a rebase here :smile:

@joshwget ah I was sure I rebased.. I just forgot to push :sweat_smile:


Fix search in profiler editor

This PR fixes https://github.com/microsoft/azuredatastudio/issues/24467.
After this change went in https://github.com/microsoft/azuredatastudio/pull/23206, search keybinding for profiler stopped working.
Updated the code to look for profiler editor as a precondition instead of context key which wasn't getting appropriately set.
After the changes., Ctrl + F works as expected. It brings up the search box in the profiler table editor.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.002%) to 41.569%

Files with Coverage Reduction
New Missed Lines
%

src/sql/workbench/services/connection/browser/connectionDialogWidget.ts
1
73.44%

Totals

Change from base Build<PHONE_NUMBER>:
0.002%

Covered Lines:
30784

Relevant Lines:
69356

💛  - Coveralls


Dynamic routes don't receive props from router

Expected behaviour:
Dynamic imports top level components should receive the same props as regular routes, i.e. props from withRouter (and most importantly the info from the url, such as a slug or id for routes like /movies/:slug ).
Current behaviour:
The top level component in dynamic imports receives no props at all from withRouter

Created PR https://github.com/VulcanJS/Vulcan/pull/2013
Now getDynamicComponent is deprecated, but two approaches can be used in order to accomplish what @Apollinaire commented in the issue:
renderDynamicComponent
More similar to the previous syntax, but I think it can become much more expensive and inefficient (more logic on each rerender, and I'm not sure how the dynamic import will behave and if it will incurr in any penalty).
import { addRoute, renderDynamicComponent } from 'meteor/vulcan:core';

addRoute({
  component: props => renderDynamicComponent(import('./path/to/RouteComponent'), props),
  // ...route options
});

dynamicLoader
I think this is the best approach, as it creates a component only once, that will execute the dynamic import on first mount.
import { addRoute, dynamicLoader } from 'meteor/vulcan:core';

addRoute({
  component: dynamicLoader(() => import('./path/to/RouteComponent')),
  // ...route options
});


Next max hit not taking attack style into account

Noticed this when checking now far I was from my next max hit.  I'm not sure exactly when this started, but do know that it was working previously (within the past month.)

My guess would be that a runelite update (or an update to one of the other plugins used) broke one of the required functions. From a cursory glance at the code I think it's the function used to get the attack style.

The attackStyleVarbit is initialized to -1, so that may be what is used for calculations afterwards, aka attack style is disregarded.

Can confirm


Add new Leaflet Map renderer info to docs

see: https://github.com/RandomFractals/vscode-leaflet

see the last ext. in this list: https://github.com/RandomFractals/vscode-data-table#recommended-extensions


chore: refactor publish

:tada: This PR is included in version 0.4.0 :tada:
The release is available on:

GitHub release
v0.4.0

Your semantic-release bot :package::rocket:


Lab Scenario preview- prod branch

Replace issue name LAB00:QUICK_DESCRIPTION, for example "LAB01: My new issue" (or same name as linked Issue)
Related Issue
Link related Github Issue 🢂 Fixes # . (Include issue number after #)
Checklist
Mark completed with "x" between brackets, "[x]", or checking the box once the PR is created:

[ ] Has related GitHub Issue 💥 Create Issue 📝
[ ] Tested it
[ ] Read the PR collaboration guide 👓 Collaboration Guide 📝

Changes proposed in this pull request:

reviewed and approving PR


Clarify merging cells by row/column numbers

The previous examples for merging cells by row/column numbers were confusing and didn't actually describe what parameters the function was expecting. The example made it appear that mergeCells(10, 11, 12, 13) was the same as mergeCells("G10", "H11"), which is not the case. This example has been updated as well as another comment added.

for me, both versions are clear to understand.
If I have to choose one, I'll prefer "top-left-bottom-right"


fix: fixed "branches" or "trunk" logic when your repo structure happens to contain one of those words

If your repository path happens to have the word "branches" in it that
is not part of the project structure (.../repo/branches/north/projectA/trunk....) the source url for the tag
operation gets out of whack; a simple fix is to search for the word from the bottom up.

Does this end up working for you? node-svn-project-root assumes the first occurrence of branches/tags/trunk is just past the root of your project. Would you end up with a mismatch between how these changes interpret the repo structure and the logic in svn-project-root?

Thanks for the response.
So I gave a try to many different combinations and still end up with a project root that is not in alignment...
The following code yields this result...
the url:svn://atldeva6.dsw.net/water.com
svn://atldeva6.dsw.net/water.com
The url we need: svn://atldeva6.dsw.net/water.com
This is in my repository url in my package.json ...
"repository" :
{ "type" : "svn",
"url" : "svn://atldeva6.dsw.net/water.com/branches/mobile/CoreMobile/trunk/"

},
My cwd is "/Users/SGARTEN/Documents/Appcelerator_Studio_Workspace2/CoreMobile"
Am I doing it wrong?

var getRoot = require('svn-project-root');
getRoot(function(err, url) {
if(err) {
console.log("encountered an error: " + err);
}
// Do something with url
console.log("The url we need: " + url);
});
try {
// Optionally you may pass a directory
var url = getRoot.sync();
console.log("the url:" +url);
} catch(err) {
console.log("encountered an error: " + err);
}
// Do something with url
var grossSvnUrl = 'svn://atldeva6.dsw.net/water.com/branches/mobile/CoreMobile/trunk/'
, prettyUrl = getRoot.normalize(grossSvnUrl);
console.log(prettyUrl);

From: Justin Russell <notifications<EMAIL_ADDRESS>Reply-To: iVantage/grunt-svn-tag <reply<EMAIL_ADDRESS>Date: Tuesday, October 20, 2015 at 5:14 PM
To: iVantage/grunt-svn-tag <grunt-svn-tag<EMAIL_ADDRESS>Cc: Scott Garten <sgarten<EMAIL_ADDRESS>Subject: Re: [grunt-svn-tag] fix: fixed "branches" or "trunk" logic when your repo structure happens to contain one of those words (#14)
Does this end up working for you? node-svn-project-roothttps://github.com/jtrussell/node-svn-project-root#assumption-sane-folder-names assumes the first occurrence of branches/tags/trunk is just past the root of your project. Would you end up with a mismatch between how these changes interpret the repo structure and the logic in svn-project-root?
—
Reply to this email directly or view it on GitHubhttps://github.com/iVantage/grunt-svn-tag/pull/14#issuecomment-149705561.

I think the issue you're going to bump into is that we're using other modules which make similar assumptions about how your repository is structured. We're generally assuming that the first occurance of trunk|branches\tags is sitting in the root of your repo - usually you can override this by listing the root in your package.json.
For example, if your package.json looks like this:
{
  "repository": {
    "type" : "svn",
    "url" : "svn://atldeva6.dsw.net/water.com/branches/mobile/CoreMobile/trunk/"
  },
  /* ... */
}

I would expect the svn-poject-root module to determine that your root is actually at svn://atldeva6.dsw.net/water.com. So I don't think you're doing anything wrong, it's just operating under different assumptions.

Ok, I appreciate your guidance on this. I will just patch a local copy of your plugin that works for our gross svn repo structure. Unfortunately the repo structure was created by someone without appreciation for the recommended structure...
Thanks again, Scott.
From: Justin Russell <notifications<EMAIL_ADDRESS>Reply-To: iVantage/grunt-svn-tag <reply<EMAIL_ADDRESS>Date: Wednesday, October 21, 2015 at 3:40 PM
To: iVantage/grunt-svn-tag <grunt-svn-tag<EMAIL_ADDRESS>Cc: Scott Garten <sgarten<EMAIL_ADDRESS>Subject: Re: [grunt-svn-tag] fix: fixed "branches" or "trunk" logic when your repo structure happens to contain one of those words (#14)
I think the issue you're going to bump into is that we're using other modules which make similar assumptions about how your repository is structured. We're generally assuming that the first occurance of trunk|branches\tags is sitting in the root of your repo - usually you can override this by listing the root in your package.json.
For example, if your package.json looks like this:
{
"repository": {
"type" : "svn",
"url" : "svn://atldeva6.dsw.net/water.com/branches/mobile/CoreMobile/trunk/"
},
/* ... */
}
I would expect the svn-poject-root module to determine that your root is actually at svn://atldeva6.dsw.net/water.com. So I don't think you're doing anything wrong, it's just operating under different assumptions.
—
Reply to this email directly or view it on GitHubhttps://github.com/iVantage/grunt-svn-tag/pull/14#issuecomment-150003841.


APIドキュメントが見れない

https://kakomimasu.com/docs/apiv1 は見れるが、そのほかのAPIドキュメントが以下の表示が出て見れない。
{"errorType":"Runtime.UnhandledPromiseRejection","errorMessage":"TypeError: href.split(...).at is not a function\nPlease report this to https://github.com/markedjs/marked.","trace":["Runtime.UnhandledPromiseRejection: TypeError: href.split(...).at is not a function","Please report this to https://github.com/markedjs/marked.","    at process.<anonymous> (/var/runtime/index.js:35:15)","    at process.emit (events.js:314:20)","    at processPromiseRejections (internal/process/promises.js:209:33)","    at processTicksAndRejections (internal/process/task_queues.js:98:32)"]}

markedのエラーっぽいが、localhostでは動く。mdのfetchがうまくできていない可能性…

Fix #77


Improvide OIDC authentication manager to work with other flows

Do not create ourselves standard claims but do PR to oidc library like in https://github.com/coreos/go-oidc/issues/224


sync upstream main branch to downstream

Sync the upstream changes from csi-addons/kubernetes-csi-addons:main into the
main branch. The recent changes that are included:
7835881a controller: add PersistentVolumeClaimController
c295ac64 controller: make reclaimspace.status.reclaimedspace a pointer
8332bdba sidecar/reclaimspace: fix staging path and volCaps for raw block pvc

/lgtm
/approve

/cherry-pick release-4.10


Change Dragon Battleaxe spec text

Changing the text from RRAAAAARGH to REEEEEEEEEE would increase the value of the weapon and make Pest Control a bit more bearable.

It's almost great idea except that I don't think we want to do meme plugins outside of april fools, sorry.

Raarrrrrgggggghhhhhhh!


JsonArray.IndexOf returns -1 when searching for added values

Describe the bug
JsonArray.IndexOf doesn't seem to find the index of values (specifically Integers previously added). The debugger shows that the array is populated like (e.g. [1] or [1, 2]) but searching for their indexes always returns -1.
To Reproduce

Run the following procedure:

local procedure foo()
var
    arr: JsonArray;
begin
    arr.Add(5);
    Message(Format(arr.IndexOf(5)));
end;

This is just a simple sample but I've been trying to find indexes of Texts (you could just do Format(1)), JsonToken (only works after using JsonArray.Get, but that assumes you know the index either way), JsonVar and so on.
Expected behavior
Message prompts with the correct index 0.
Screenshots

Versions:

AL Language: 3.0.152816

Business Central: 14.0.32600.0

I have this issue, too

Same issue here.  Do you guys know of any workaround?  Looping I guess? :-)

The fix for this issue has been checked in to the master branch. It will be available in the bcinsider.azurecr.io/bcsandbox-master Docker image starting from platform build number 37631 and VS Code Extension Version 5.0.192301.
If you don’t have access to these images you need to become part of the Ready2Go program: aka.ms/readytogo
For more details on code branches and docker images please read:
https://blogs.msdn.microsoft.com/nav/2018/05/03/al-developer-previews-multiple-releases-and-github/
https://blogs.msdn.microsoft.com/freddyk/2018/04/16/which-docker-image-is-the-right-for-you/


firefox-bin: 81.0.2 -> 82.0

https://www.mozilla.org/en-US/firefox/82.0/releasenotes/
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

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

I tried to verify this but the update script just block forever for me. Not entirely sure how this relates to #98338

I assume this needs a backport?


Fix metronome not reviving when starting new job

Summary:
Offer matcher reconciler was not run with .start() so the source was emitting no value and combineLatest needs at least one value to publish ANY result.
We don't need OfferMatcherReconciler at all since we don't use PVs (as pointed out by Matthias).
JIRA issues: DCOS_OSS-5166

This fixes the issue upstream: https://github.com/mesosphere/marathon/pull/6948

ugh
+ bin/install-protobuf.sh
Linux
bin/install-protobuf.sh: 10: [: Linux: unexpected operator
E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?
script returned exit code 100


python cv bugfixing (eval metrics)

fixed bug if both eval_metrics xgb-param and metrics param of cv function have been set
cv early stopping output looks now like the one of xgb.train

@Far0n Could you add some test for the two fixes?

@terrytangyuan sure, done.

.. sry my ide reformatted "test_basic.py". hope this is okay?!

LTGM. Thanks!


Test CDK synth output

See example test.

We have decided to skip this for now and keep things simple.

Put in backlog to remember it.


Reading tags

Is there any way currently to read in tags from the mesh file? for example: when reading the following triangle from a .msh file
13137 2 2 0 30 9328 13513 16999

I need to be able to read the second tag, ie the fact it belongs to object 30
Can't find a way to do this using meshio, so i'm having to read the file twice to get this information.
Cheers.

Fixed now.


#476 crud improvements

https://github.com/astorm/pestle/issues/476
Trying to make generated code compatible with Magento type hint checks

@sallaberry FYI -- I just opened a branch/pr where I'm going to try and get phpcs to do it's thing in our CI/CD build: https://github.com/astorm/pestle/pull/479
Once I get that running, we can incorporate that over here and ensure whatever files you intend to have pass the phpcs sniffs pass before checking stuff in.
I'll update this PR when I've got #479 working

Ok thank you.
Also after reading more in the already opened similar issues like #273 I realise some of the modifications I submitted might not be to your liking:
I added PHPDoc for all methods, class, interfaces, and "pretty print" _construct/_init params in multiline because of php-cs line > 120 characters... It produces a lot more "noise" but makes my IDE happier.
I agree with the noise problem, but that would be a nice feature to have maybe with an optional argument like --with-phpdocs for all commands ?

Re:

Also after reading more in the already opened similar issues like #273 I realise some of the modifications I submitted might not be to your liking:

That may have been true then, but this is now.
I'm not doing active, on the ground, Magento work these days (I mean, if someone threw a big giant pile of money or incentive at me I would, but that's another story for another time).  I maintain pestle for the benefit of the community, and because I enjoy the privilege of having an open source project that has active users, but not so many active users that it drives me crazy :)
At this point, when it comes to the sort of code pestle generates for Magento, I'd rather leave it to someone like yourself and others who are actively engaged in working with the platform.
Re: Next steps.
I just merged a PR that adds a phpcs lint check to travis using the magento/magento-coding-standard rules.  It's my understanding these are the new unified rules Magento developers are trying to adhere to.
Could you

Pull the new master into this PR
Add pestle.phar magento2:generate:... calls to for-lint.sh for the commands whose output you're changing.
Make sure whatever changes you're making apply to these standards keeps travis happy
Let me know if all this sounds reasonable, or if you have additional suggestions for improvements.
Let me know if you run into trouble making the new phpcs work.

Does that sound OK/reasonable?

Sounds OK.

I have more improvements in mind, but first I'll try to make theses work / pass the new integrated phpcs

Are we sure Travis is git cloning the right branch? Feels like phpcs reports warnings that I already fixed in the current branch.. Maybe this?

Shouldn't it build pestle.phar from current branch

You're right.  I'd forgotten where that pestle.phar came from and assumed it was the current branch/version.  Give me 10/15 minutes and I'll have a "pestle_dev" command available for use in travis.

Going to need to adjust that 10 - 15 minutes to "later tonight or tomorrow", but I've got a dirty version working here: https://github.com/astorm/pestle/pull/480/files  if you want to give it a try
This will build and install a pestle.phar from the current branch -- not that pestle_dev approach I started with.

Ok thanks I'll have a look.

OK, master should have now have a pestle.phar that's built off of the branch that's been PR'd

@sallaberry How are you feeling about this?  Ready for me to take a look and merge?  Or are you still working on stuff?

Yes I think it's ready if you take a look at what I've done so far. Please check I didn't break anything... I didn't modify the generated php too much so I think It's all good.

Sorry for the delay, I made the requested changes.

Great work @sallaberry!  And re:

Sorry for the delay, I made the requested changes.

You're offering your free time to improve this software project -- so you get to decide how long you take :)
Merging the changes now.  I've added this soon-to-be-closed-PR to the "current undated sprint" milestone, and it will go out in the next release of pestle -- which should be soonish (probably when I finish up the remaining documentation items for pestle/internals over on https://pestle.readthedocs.io)
Also, semi related, this work led me to open a new issue: https://github.com/astorm/pestle/issues/491 -- I think I'd like to get those backup files out of the module folder itself and put somewhere else.


Missing weight sharing?

Hi
Thank you for sharing your implementation.  It is quite helpful!
However, I think you missed the weight sharing part (see page 4, under figure 2, each capsule in [6,6] grid is sharing their weights).  So my understanding is that your cap_ws should have the last dim of 32, instead of 1152.
Although I tested both cases, in the early training stage, I didn't see too much difference.

Hi,

I think it means that each capsule in the [6,6] grid shares the weights of conv op which have the shape 8 x 9x9 x 256 for each of 32 channels of the PrimaryCaps(i.e. sharing feature detector spatially), and it's not about sharing weights with DigitCaps.

Thanks.  I thought the same way at the beginning.
Never mind.  In this way, we actually treat the 6632 capsules as individual ones. I am just not sure whether they have a specific reason to put a 32-layer representation here.

Glad that we share the same idea.
As for the choice of 32-channels of PrimaryCaps, I suppose it's kind of similar to the output channel in traditional conv nets, where we usually select 256, 512 etc. In this case, we choose 8x32=256 as the output channel, since the capsule needs to be a vector and we choose 8 as number of units in one vector, so finally, the channel of Primary caps would be 32. In a word, i think there is no specific reason, but following conventional instinct building a network with conv ops.
best,