Use library to make it easy to get the length of video files

I have a nuget package you can use.  Here is the link to my open source project that can get the length of video or even music files.
https://github.com/musictopia2/MediaHelpers.MediaLengthWindowsLibrary
You can look under nuget.  Its very easy to use.  There is a static class.  You just send the path of the media file and it returns the length.
This only works under windows though and had to use the com objects if that is fine.
If you know of a way that does not have to use com to get the length of video or even music files, that would be even better.

From what i can see, you are using the same com object that my uses.  However, I already have this done.
Because i needed for many media programs i created.  i also created many nuget packages to help with music/video (including working from blazor) via hybrid.

I've taken a look at your NuGet package, and I would have used it was I on the same .net version as the NuGet package, I'm currently doing this in 3.1, until I upgrade.
The only way I know of handling this, is like you noticed by using the COM object or a Windows Media Player.
When I google'd for a solution most of the answer, libraries and such seems to be a bit out of date.

If you want, i can change to multitargeting so it can work on core 3.1 as well if you want.  then you can use my then.  i did with some of my libraries where it was using .net 6 but some needed .net standard 2.0.

Only if you got the time, no matter what I'm gonna target 6.0 sooner or later, so it's totally up to you.

I tried to make it work with .net core 3.1 in addition to .net 6.  Unfortunately, i could not get it to publish.
However, you can copy the source code from my repository for now.
I did not use anything specific to .net 6 except for global usings.
You can set the project type to use c# latest which will allow global usings.
When I tried to set to both .net core 3.1 and .net 6, then it fails to create nuget package because projects featuring com objects don't allow multi targeting unfortunately.


pynance.data.retrieve.get fails

retrieval for US equities (data.equities) works just fine:

eqs = pn.data.equities('US')
print eqs

but for individual equities it fails:

goog = pn.data.get('goog', '2016')
print goog
Empty DataFrame
Columns: [d=document, e=d.documentElement, b=d.body, x=w.innerWidth||e.clientWidth||b.clientWidth, y=w.innerHeight||e.clientHeight||b.clientHeight;url+="&w="+x+"&h="+y;}window.location.replace(url);]
Index: []

Any ideas on a workaround? If this is indeed related the pandas-datareader yahoo problem then can we simply call google instead? I'm referencing retrieve.py found here, specifically changing line 34 from 'yahoo' to 'google' but I'm uncertain how that would impact the rest of the package...

It is the pandas-datareader Yahoo! problem. You can certainly use Google rather than yahoo as data source by changing the line you mention. I didn't use Google originally because they didn't provide as much data as Yahoo. If you try that fix, please post how it goes. It might make sense to switch to Google in future versions.
You may also find that pandas-datareader has fixed the issue in the most recent version (0.5.0), so the current code might work after all if you update the pandas-datareader dependency.

Thanks, the pandas-datareader update has it working fine. Great package, deserves more stars.


Add toggle arrow button in Testimonials section .

Description
If we add forward and backward toggle arrow button in "Testimonials " at position " What does the community have to say  about us? " section . I think it works good because in timer feature not easy to read about community in less time .  so @SauravMukherjee44 bhaiya If you like this idea please assign me this work .
Screenshots

Go for it!

hello @SauravMukherjee44
please assign me this

@roy2pushkar Still working?

@SauravMukherjee44  yes bhaiya becoz of Dusshera I'm little late .

I want to contribute to this issue.
Kindly assign me


Use the correct font name for "Helvetica Neue"

The font name is 'Helvetica Neue', and just falls back to Helvetica/sans-serif right now.

Good catch, thank you.

:+1:


apply styles of half section when printing

add parameter to mq mixins to set styles for print

This is the printed PDF before the changes
CV-before.pdf
This is the printed PDF after the changes
CV-after.pdf

@janKollars nice, thank you!


Feature/Add message history to agents

Adding few shot messages can greatly increase model performance, especially when it comes to function calling.
Reference: https://blog.langchain.dev/few-shot-prompting-to-improve-tool-calling-performance/

Hi guys! I was playing with your example called "Advanced Structured Output Parser" from the Marketplaces tab, and it didn't work. I think it's because of this line from this PR:
if ((messageHistory && messageHistory === 'messageHistoryCode') || (selectedTab === 'messageHistoryCode' && messageHistoryCode)) {

Where messageHistoryCode can be undefined.
With this line modified to check for messageHistoryCode, the example works. Maybe this is a bug.
Anyway, thank you for the amazing product!

Hey @jazzandrock thanks for the heads-up! Would you be able to submit a PR fix? Happy to accept!


update finding-users polish article

This PR contains a set of grammar fixes and wording changes to make finding-users article in Polish sound more natural

[x] Have you followed the contributing guidelines?
[x] Have you explained what your changes do, and why they add value to the Guides?

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Thanks again @ernest-rudnicki!

الاغراء الاشتراك
في الاثنين، ٢٢ أغسطس ٢٠٢٢ ٢:٥٩ م Mike McQuaid @.***>
كتب:

Thanks again @ernest-rudnicki https://github.com/ernest-rudnicki!
—
Reply to this email directly, view it on GitHub
https://github.com/github/opensource.guide/pull/2913#issuecomment-1222324034,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AZVZMDC7IRPJHUEBIDJMQDLV2N2UXANCNFSM57DANW4A
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Changed scope of deferred variable in request function.

Fixed issue #5 where deferred response was being overwritten when responding to simultaneous requests due to the fact that it's scope was broader than the request function.

Hi - this causes serious problems for us in our app. Could you please apply this pull-request to fix the issue?
Thanks

this causes problems with testing as well. +1


Record exception

Addition to request and response recording, add an field for exception recording in message model. If any error occurred, store it.

Currently when exception raises DB save nothing because .save() never called. This should be addressed.


Retrieve group membership scopes from ELIXIR AAI

[x] Investigate if groupNames is available in the ELIXIR AAI token
[x] Use TESK group name to restrict access to the API
[x] Store ownership information (owing USER and GROUP) with task
[ ] Manual testing
[ ] Unit/Integration tests
[ ] Document design

Please elaborate this task with further sub-tasks as necessary

Quick notes - should end up in a proper document:

There is a scope groupNames and is required to access group membership info. Just that the information is not available in any of the tokens (nor access, neither id), but in the user info endpoint. So we will hit that endpoint for each request to TESK.

We came up with such privs design:

to create a task, a user has to be a member of elixir:GA4GH:GA4GH-CAP:EBI group and EBI will indicate an environment/installation of TESK.
we will introduce organisational groups, which will be direct subgroups of elixir:GA4GH:GA4GH-CAP:EBI. Admins of such groups will be saved as members of subgroup with a name ADMIN (so for elixir:GA4GH:GA4GH-CAP:EBI:SDO group, members of  elixir:GA4GH:GA4GH-CAP:EBI:SDO:ADMIN will be SDO admins. Members of elixir:GA4GH:GA4GH-CAP:EBI:ADMIN will be treated specially - as global admins.
each task will be owned by one user and (at most) one group. If user belongs to more than one groups, they would have to choose at the time of task creation, for each group they create the task.
a user will be able to see and/or cancel a task, if any of the below is true:
-- user is a global admin (a member of elixir:GA4GH:GA4GH-CAP:EBI:SDO:ADMIN)
--user owns a task (created it) and (still) belongs to a group owning the task
--user is an admin of a group owning the task
--user as a global admin.

We will store owning group and user_id as K8S labels (problems already appeared - label values have restricted characters) and for list query use label selectors, whenever possible.
We will return owning group and user_id as TES logs.metadata

Tested by @erikvdbergh (as we prepare for Elixir All Hands)
Identified issue: swagger UI cancel - fixed.
Request for debug mode for taskmaster - done.


Argument passed to at() was not in the map.

I'm having problems replacing Umaba's encoder and decoder with nnUNet's original decoder:
Argument passed to at() was not in the map.
And when this problem occurs, the pseudo-loss stays at 0.
Have you seen this problem before? Looking forward to your reply!

Hi @Overflowu7 ,
sorry for the late reply. We didn't try this. Could you please share more details?

thanks you for your reply! I will give the infomation. But this is a warning, not an error.
Epoch 0
Current learning rate: 0.01
using pin_memory on device 1
/home/wu/wyc/nnUNet/nnunetv2/net/mamba/UMambaEnc.py:46: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
assert C == self.dim
/home/wu/.conda/envs/nnUNet/lib/python3.9/site-packages/einops/einops.py:316: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
known: Set[str] = {axis for axis in composite_axis if axis_name2known_length[axis] != _unknown_axis_length}
/home/wu/.conda/envs/nnUNet/lib/python3.9/site-packages/einops/einops.py:317: TracerWarning: Converting a tensor to a Python boolean might cause the trace to be incorrect. We can't record the data flow of Python values, so this value will be treated as a constant in the future. This means that the trace might not generalize to other inputs!
unknown: Set[str] = {axis for axis in composite_axis if axis_name2known_length[axis] == _unknown_axis_length}
2024-04-02 21:22:12.595865: Unable to plot network architecture:
2024-04-02 21:22:12.596317: Argument passed to at() was not in the map.
2024-04-02 21:22:12.731663:
2024-04-02 21:22:12.731911: Epoch 0
2024-04-02 21:22:12.732270: Current learning rate: 0.01
using pin_memory on device 0

How is the training going?


error: could not compile librespot-protocol

What am I doing wrong? I'm on Ubuntu 20.04 with version rustc 1.43.1 (8d69840ab 2020-05-04) Installed the extra's (build-essential, libasound2-dev, pkg-config)
I've done reboots, uninstalls, clean-ups but can't get it to install. Errors are as follows:
Compiling librespot-protocol v0.1.1
error[E0308]: mismatched types
--> /home/paul/.cargo/registry/src/github.com-1ecc6299db9ec823/librespot-protocol-0.1.1/build.rs:45:39
|
45 |         let p = parse_and_typecheck(&["proto"], &[src]).expect("protoc");
|                                       ^^^^^^^ expected struct std::path::Path, found str
|
= note: expected reference &std::path::Path
found reference &'static str
error[E0308]: mismatched types
--> /home/paul/.cargo/registry/src/github.com-1ecc6299db9ec823/librespot-protocol-0.1.1/build.rs:45:51
|
45 |         let p = parse_and_typecheck(&["proto"], &[src]).expect("protoc");
|                                                   ^^^ expected struct std::path::Path, found struct std::string::String
|
= note: expected reference &std::path::Path
found reference &std::string::String
error: aborting due to 2 previous errors
For more information about this error, try rustc --explain E0308.
error: could not compile librespot-protocol.
To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: failed to compile librespot v0.1.1, intermediate artifacts can be found at /tmp/cargo-install2U3hao
Caused by:
build failed

Dupe of #460 are you on current dev?

Yes I am, I used the suggestion of #460 cloning the repo and build from there and now it's working. Apologies for not finding #460 and thanks a million for Librespot

@XeOS1977 were you running cargo install librespot previously?

Yes I was, with forementioned additions


task/pthread_cancelpt: Move cancel point handling to libc, data to TLS

Summary
This moves task / thread cancel point logic from the NuttX kernel into libc, while the data needed by the cancel point logic is moved to TLS.
Why do it ?
The change is an enabler to move user-space APIs to libc as well, for a coherent user/kernel separation. The first one I will move is the semaphore API, and remove the SEM_XX() macros that are currently needed to glue sem and nxsem_ APIs in libc.
Impact
Should be none functionally (if no regression),  quite significant architecturally.
Testing
rv-virt:nsh64 (ostest), knsh64 (limited test), MPFS target with >100 processes threads that spawn / exit all the time

@pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ?

@pussuw what are the pros and cons of moving the cancellation points to user space/libc ?

@pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ?

That is something I had planned to do and is a good idea if you are careful.  My primary concern was "sneak" paths that could cause nesting.  I don't know if the following is possible but consider this:

A task sets up a signal handler and calls a cancellation point function,
The function signals the task, since it is the same task, I think that the signal handler will run immediatedly (true?),
The signal handler runs and calls another cancellation pointer function, effectively resulting in nesting.

If such a think could happen, then that would likely result in a resource leak since the second cancellation point function would not be allowed to do its clean-up.
One thing that you can do is:

Retain the nesting count (only) and only if CONFIG_DEBUG_ASSERTIONS is enabled
Then assert that the nesting count is zero on entry into the cancellation point function.

@pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ?

That is something I had planned to do and is a good idea if you are careful. My primary concern was "sneak" paths that could cause nesting. I don't know if the following is possible but consider this:
1. A task sets up a signal handler and calls a cancellation point function,

2. The function signals the task, since it is the same task, I think that the signal handler will run immediatedly (true?),

3. The signal handler runs and calls another cancellation pointer function, effectively resulting in nesting.

If such a think could happen, then that would likely result in a resource leak since the second cancellation point function would not be allowed to do its clean-up.
One thing that you can do is:
1. Retain the nesting count (only) and only if CONFIG_DEBUG_ASSERTIONS is enabled

2. Then assert that the nesting count is zero on entry into the cancellation point function.

Yes the situation you describe is entirely possible when system calls are disabled. When system calls are enabled the signal delivery gets deferred until the system call is finished. So maybe it is not a good idea for me to fiddle with that part after all..

@pussuw what are the pros and cons of moving the cancellation points to user space/libc ?

@acassis My primary concern and motivation for doing these changes is to improve security via cleaner kernel/userspace separation. Improving security is a pro for me. It is also the most important improvement point in NuttX for me.
The con is of course a possible regression. I presume many people are happy with how things are right now and would rather not see such architectural changes.
So why do it at all then ?
It is a prerequisite for moving sem_ pthread_ et all into libc/userspace as well (from the sched/ folder) and instead of exposing e.g. sem_wait() as system call, nxsem_wait() would be the gate into kernel, while the libc part handles errno and cancel points.
What is the problem I'm trying to fix?
I am trying to find a fix for the current user space semaphores, specifically for the kernel build. The problem is that the sem_t data goes into user memory (waitlist, flags, holderlist). The user should only need access to the counter, the rest is needed by the kernel. The problem with having that data in user memory is obviously that the user memory might not always be accessible via a user space pointer (wrong address environment can be active).
This is a long story but some of it is in here https://github.com/apache/nuttx/issues/8917 and some is on the mailing list


Use of equivalent focal length?

Hi, how are we dealing now with focal length in the reconstruction?
It seems that the focal length read from the MC files is the "effective" one, as opposed to "nominal" (called "equivalent" in ctapipe terms). On the other hand, I think real data (at least those of LST) contain only the nominal value, right?

For MAGIC real data, the effective focal length is the default. It can be selected at the level of MAGICEventSource within ctapipe_io_magic.

Ok, thanks @aleberti , I see:
https://github.com/cta-observatory/ctapipe_io_magic/blob/77ca709809e5ac12c8798e7491d86bb7bff15598/ctapipe_io_magic/__init__.py#L623-L631
I think however it is slightly wrong (shouldn't the nominal be 16.97 m ?) but that will have little effect.
It is also a bit misleading to have it stored under "equivalent_focal_length". Once the ctapipe dependency is updated we should use the "effective_focal_length" field.


Test infrastructure

It seems the documentation for the testing infrastructure is misleading. I can see the tests on Travis and AppVeyor ran 3 months ago.
I believe it's related to the migration to Azure Pipelines, but not entirely sure to contribute.
Either way, the links available for Travis and AppVeyor are not useful currently, so it's certaily an issue.

Good catch! Indeed, we should replace them with Azure Pipelines'.

@JohnTitor do we have more info about that available anywhere? I can try to submit a PR for it.

We should update it as follows:

The sentence Travis will automatically launch a build that will run all tests on a single configuration (x86-64 linux) should be Azure Pipelines will automatically [...] all tests on some configurations (x86_64-gnu-llvm-6.0 linux. x86_64-gnu-tools linux, mingw-check linux)

The Azure Pipelines' link should probably point to https://dev.azure.com/rust-lang/rust/ or https://dev.azure.com/rust-lang/rust/_build

The sentence When a PR is approved, it goes into a queue where merges are tested one at a time on a wide set of platforms using Travis and Appveyor (currently over 50 different configurations). should be [...] on a wide set of platforms using Azure Pipelines (currently over 50 different configurations).

I'm not sure about the number of configurations but I guess it is unchanged

CC: @spastorino

Proposed a PR with the changes mentioned here. I can see there is another reference to Travis on Testing on emulators, but I'm not sure if we're still using that setup. Please let me know if I should just change to Azure Pipelines or if it should change entirely.

TBH, I'm not sure. I think your current PR is good though. If we discovered more we can do that change in another PR


Modify Travis build to make use of docker

From @jodh-intel on September 29, 2016 9:32
Travis is an excellent facility, but the fact that the newest environment they support is Ubuntu Trusty (14.04) is problematic given the old versions of tooling and libraries.
We should use Travis to trigger a build and test run inside a docker image since that way we can use any environment we wish (even multiple).
Related: #255, #295, #114, #155.
Copied from original issue: 01org/cc-oci-runtime#305

From @jodh-intel on September 29, 2016 9:33
Rework https://github.com/jodh-intel/cc-oci-runtime/blob/run-tests-in-travis-under-docker/ to only run unit tests (but including valgrind, cppcheck and code-coverage).


Add a new plugin "open-svc"

This kubectl plugin opens the Kubernetes URL(s) for the specified service in your browser.

https://github.com/superbrothers/kubectl-open-svc-plugin

"service" plugin was renamed to "open-svc". /ref #12

This plugin is amazing.


feat: add hide props in detail types for hide route from OpenAPI/swagger document

Exclude from OpenAPI/swagger file routes with inspired by @fastify/swagger hide paths
detail: {
    hide: true
}

example
const app = new Elysia()
                        .use(swagger())
			.get("/public", "omg")
			.guard({
				detail: {
					hide: true
				}
			})
			.get("/hidden", "ok")

Should be merged with https://github.com/elysiajs/elysia-swagger/pull/137
Close/helps https://github.com/elysiajs/elysia/issues/412

@SaltyAom


[BEAM-10137] Add KinesisIO.Read external transform

This transform sends bytes stream instead of the whole KinesisRecord, as RowCoder is not fully functional yet.
Chronology:

java write
java read
python wrapper
python integration tests

PR for java external transform for write: #12234
PR for python wrapper for write: #12235
PR for python wrapper integration tests: #12298
Please review only the Read part of this PR.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.

R: @TheNeuralBit  Could I ask you for review?

@TheNeuralBit I've moved all commits to this PR. I have a feeling that big PR is better than few smaller PRs dependent of each other - they are much less maintainable. I'm used to Gerrit where each dependent commit is a PR rebased on the previous commit.
I tried to use testcontainers with localstack but I encountered a problem that I can create, read and write streams via boto3, but I'm unable to use it with Beam. What I found is that kinesis java sdk by default uses CBOR which can be disabled by executing java program with kinesis sdk with executing it with -Dcom.amazonaws.sdk.disableCertChecking=true. But I don't have an idea how to do that in beam's execution model - do you have any idea or suggestion how could I do that?

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

@TheNeuralBit I did my best to make read test work but without success. I tried what people suggested here https://github.com/localstack/localstack/issues/507 and https://stackoverflow.com/a/56867870/7946496 but nothing worked.
When I use http in service_endpoint, which works for boto3 python sdk I get error:
com.amazonaws.services.kinesis.model.AmazonKinesisException: null (Service: AmazonKinesis; Status Code: 500; Error Code: null; Request ID: null)
When I use https in the transform argument service_endpoint I get
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
I tried to run jars with these flags: -Dcom.sun.net.ssl.checkRevocation=false, -Dtrust_all_cert=true -Dcom.amazonaws.sdk.disableCertChecking
Setting these values in the main method of expansion service also had no effect.
    System.setProperty(SDKGlobalConfiguration.DISABLE_CERT_CHECKING_SYSTEM_PROPERTY, "true");
    System.setProperty(SDKGlobalConfiguration.AWS_CBOR_DISABLE_SYSTEM_PROPERTY, "true");
    System.setProperty("com.sun.net.ssl.checkRevocation", "true");

So I'm a bit stuck. How about skipping the read test and creating a Jira issue to make it work? I think that it's possible to run this test with localstack but I'm missing something. I've spent a lot of time on it already and I doubt I'll come up with something.

@TheNeuralBit Sorry for lots of messages but every day brings something new.
I've managed to modify existing KinesisIOIT to work with localstack (I'll push it in a separate PR).
I've also managed to run cross-language read test. But it required putting this code anywhere in harness code, which is definitely not any solution:
System.setProperty("com.amazonaws.sdk.disableCertChecking", "true");
System.setProperty("com.amazonaws.sdk.disableCbor", "true");

I have no idea how to dynamically inject these except for creating custom beam java sdk docker image with modified harness code especially for this test. I don't think it's an acceptable solution though. Do you possibly have a better idea?
If this is the only thing we could do I'd just skip read test and just execute only write instead in the postcommit.

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

@TheNeuralBit Forget what I said. I've just found that the expansion-service has an indirect dependency on harness and I managed to set test properties in gradle file. Now both read and write seem to work. I think that this PR is ready to review now.
I don't know why python linter failed on an unrelated file: spark_uber_jar_job_server_test

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

@TheNeuralBit Ping

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Python 3.8 PostCommit

Run Java PreCommit

Run Portable_Python PreCommit

@chamikaramj ping

Please resolve the conflict.

Please resolve the conflict.

@chamikaramj Done

Run Python 3.8 PostCommit

Run Typescript PreCommit

Run Python PreCommit

Run Typescript PreCommit

Run Python PreCommit

Run Python PreCommit

Thanks for make it finally merged.
Quick note: this change is quite significant, please, update CHANGES.md on this (if not yet).

I'm getting this error when trying ReadDataFromKinesis,

RuntimeError: Unable to fetch remote job server jar at https://repo.maven.apache.org/maven2/org/apache/beam/beam-sdks-java-io-kinesis-expansion-service/2.24.0/beam-sdks-java-io-kinesis-expansion-service-2.24.0.jar: HTTP Error 404: Not Found

Seems like beam-sdks-java-io-kinesis-expansion-service no longer exists on Maven?

I'm getting this error when trying ReadDataFromKinesis,

RuntimeError: Unable to fetch remote job server jar at https://repo.maven.apache.org/maven2/org/apache/beam/beam-sdks-java-io-kinesis-expansion-service/2.24.0/beam-sdks-java-io-kinesis-expansion-service-2.24.0.jar: HTTP Error 404: Not Found

Seems like beam-sdks-java-io-kinesis-expansion-service no longer exists on Maven?

@yuanhunglo ReadDataFromKinesis transform will be available in the 2.25.0 release. It was merged too late to make it to the 2.24.0. If you want to run it using 2.25 code then you need to build the expansion service using
./gradlew :sdks:java:io:kinesis:expansion-service:shadowJar

Then ReadDataFromKinesis should be able to detect the expansion service jar

I tried that and received this error. I'll wait till 2.25.0 release to try again. Thanks!

_InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.UNAVAILABLE
details = "failed to connect to all addresses"
debug_error_string = "{"created":"@1602094791.569834934","description":"Failed to pick subchannel","file":"src/core/ext/filters/client_channel/client_channel.cc","file_line":4133,"referenced_errors":[{"created":"@1602094791.569831898","description":"failed to connect to all addresses","file":"src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc","file_line":397,"grpc_status":14}]}"

Sorry, I forgot there is an additional setup needed.
You also need to build the jar of the runner you are using - example for Flink (you don't need it for DirectRunner)
./gradlew :runners:flink:1.10:job-server:shadowJar

Current python container:
./gradlew :sdks:python:container:py37:docker

Building java sdk container should not be needed - pulling the latest (2.24) from docker hub should be sufficient. But to be on the safe side:
./gradlew :sdks:java:container:docker
docker tag apache/beam_java8_sdk:2.26.0.dev apache/beam_java8_sdk:2.24.0.dev

It will definitely be the easiest to wait for 2.25 but on the other hand it's a long time.


Why lxc exec $lxc_name pwd > file.txt is no longer non-interactive?

In LXC 3.03 if I needed to get something out of the container in script I could use the syntax
lxc exec $lxc_name -- command > redirect_file.txt

With LXC 3.10 it no longer works. The script waits until user press Enter. It can be bypassed with
echo '\n' | lxc exec $lxc_name -- command > redirect_file.txt

but that pipe breaks some of the advanced bash code I wrote that initializes and polishes LXC containers. It would be so much easier, if lxc exec $lxc_name -- command > redirect_file.txt was non-interactive, like it used to be.
Note, that without a redirection
lxc exec $lxc_name -- command

does not wait for new line.
I tried --mode=non-interactive but it changes nothing.

@joelhockey e2379cf367ef76f1b42f5a747c475c18cbdf6cac is causing this behavior?
Any idea on a fix?

@smibarber - any thoughts?

Given how widespread this issue is right now, we'll revert this commit for now, I'd rather have a goroutine leak than hung processes everywhere :)

@stgraber
snap refresh lxd did not update the lxd to the working state. If that does not help, can you point me to the instructions how do I manually downgrade the lxd in my machines to revert that unfortunate commit.

The revert isn't available yet, it's going through CI now.

It works now, thanks!

Re-opening as we didn't fix the issue so much as reverted the change that caused it, this revert means that we are now leaking goroutines and wasting CPU, so this still needs fixing.

It looks like the hang is down in ReaderToChannel, which makes sense if stdin is a tty. That read will block until a newline.
I think that the issue is the heuristic for determining whether or not to run in interactive mode. It should be sufficient to just check if stdin is a tty, like openssh does, vs checking that both stdout and stdin are ttys.

Fwiw, we have the same logic in LXC already.

No, that's wrong.
If you only check stdin, then you would be running the command above in interactive mode, meaning that the output will be rendered on a PTS device with a size, causing truncation of output.
The right heuristic IS to check whether either stdin or stdout is a non-terminal target and go in non-interactive mode in that case. That's actually exactly what SSH does:
stgraber@castiana:~/data/code/lxc/lxd (stgraber/master)$ ssh shell.stgraber.org
Last login: Tue Feb 26 07:56:46 2019 from 2001:470:b368:1035::50
stgraber@shell01:~$ ls -lh /proc/self/fd/
total 0
lrwx------ 1 stgraber domain admins 64 Feb 26 08:46 0 -> /dev/pts/5
lrwx------ 1 stgraber domain admins 64 Feb 26 08:46 1 -> /dev/pts/5
lrwx------ 1 stgraber domain admins 64 Feb 26 08:46 2 -> /dev/pts/5
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 3 -> /var/lib/sss/mc/passwd
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 4 -> /var/lib/sss/mc/group
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 5 -> /proc/975409/fd
stgraber@shell01:~$ logout
Shared connection to shell.stgraber.org closed.
stgraber@castiana:~/data/code/lxc/lxd (stgraber/master)$ ssh shell.stgraber.org ls -lh /proc/self/fd/ < /dev/null
total 0
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 0 -> pipe:[417352364]
l-wx------ 1 stgraber domain admins 64 Feb 26 08:46 1 -> pipe:[417352365]
l-wx------ 1 stgraber domain admins 64 Feb 26 08:46 2 -> pipe:[417352366]
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 3 -> /var/lib/sss/mc/passwd
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 4 -> /var/lib/sss/mc/group
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 5 -> /proc/975464/fd
stgraber@castiana:~/data/code/lxc/lxd (stgraber/master)$ ssh shell.stgraber.org ls -lh /proc/self/fd/ | tee
total 0
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 0 -> pipe:[417352554]
l-wx------ 1 stgraber domain admins 64 Feb 26 08:46 1 -> pipe:[417352555]
l-wx------ 1 stgraber domain admins 64 Feb 26 08:46 2 -> pipe:[417352556]
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 3 -> /var/lib/sss/mc/passwd
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 4 -> /var/lib/sss/mc/group
lr-x------ 1 stgraber domain admins 64 Feb 26 08:46 5 -> /proc/975509/fd

Ah, sorry, I misread. I read only the last part and thought it was saying stdin && stdout. Sorry for the confusion.

Going to close this one and will comment in the original PR/issue instead.


JPeek command line from README doesn't work

Command line: https://github.com/yegor256/jpeek/tree/bcab016ee68717091fd0b8345e78f507cade036c#how-to-use
Steps to reproduce

Full build $ mvn clean install -Pqulice
$ java -jar ./target/jpeek-jar-with-dependencies.jar --sources=src/ --target=./jpeek-target/

Observed
Exception:
Exception in thread "main" com.beust.jcommander.ParameterException: Was passed main parameter '--sources=.' but no main parameter was defined in your arg class
	at com.beust.jcommander.JCommander.initMainParameterValue(JCommander.java:936)
	at com.beust.jcommander.JCommander.parseValues(JCommander.java:752)
	at com.beust.jcommander.JCommander.parse(JCommander.java:340)
	at com.beust.jcommander.JCommander.parse(JCommander.java:319)
	at org.jpeek.Main.main(Main.java:97)

Expected
Analysis process of some kind that leads to generated reports in jpeek-target folder.

@yegor256/z please, pay attention to this issue

@rexim fixed in e42c4de thanks!

Job gh:yegor256/jpeek#158 is not assigned, can't get start time

Job #158 was not in scope


Monitoring Improvements -- connecting to Cloud

Attempts to address #2953 part 1c and lays the foundation to tackle the rest of that issue.  But, given the size of this, we thought some review on this should be done before we proceed, clone this and leverage it further.
InfluxDB v2.x OSS monitoring via Free cloud account and template.
Platform docs -- point to templates for monitoring 1.x OSS / Enterprise.   More details to be added....after this PR is reviewed/edited and merged.

requires: https://github.com/influxdata/community-templates/pull/264

Addressed @sanderson's changes.


[Dev] Slow unit tests

There is only a small number of really slow (>10 seconds) unit tests, would be great if they could be tweaked a little bit:

Just being Mr Pedantic Head here :) but aren't these mostly integration tests, i.e. hitting disk or the network, which means they are likely to not be mega-fast and vastly different for each person?  I still agree they should be as fast as possible.  I'll have a look at a few anyway.


Update device-control-removable-storage-protection.md

Docs Build status updates of commit c5fcd5d:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md
:warning:Warning

Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md

Line 45, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.
Line 66, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit ef8da70:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md
:warning:Warning

Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md

Line 46, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.
Line 67, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 8444374:
:warning: Validation status: warnings

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md
:warning:Warning

Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md

Line 46, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.
Line 67, Column 15: [Warning: bookmark-not-found] Cannot find bookmark '#device-properties' in 'security/defender-endpoint/device-control-removable-storage-protection.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 94a787a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md
:white_check_mark:Succeeded

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

Docs Build status updates of commit a440371:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-365/security/defender-endpoint/device-control-removable-storage-protection.md
:white_check_mark:Succeeded

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


Error Code 79 with 2x E5-2697A V4

Not quite an issue but was hoping you might be able to point me in the right direction. I've been trying to get 2 E5-2697A V4 CPU's working in the v1.31 revision of the ZX-DU99D4. I've tried 3 different mobo's (all DU99D4) and none of them would get past error code 79 with more than 1 CPU installed. With 1 CPU installed it posts fine.
I've seen eBay listing with the older revision of this board paired with these CPUs and somehow have it working but I can't for the life of me. I know this is a peticular configuration issue but I figured I would reach out anyways. Any thoughts?
Thanks

Not quite an issue but was hoping you might be able to point me in the right direction. I've been trying to get 2 E5-2697A V4 CPU's working in the v1.31 revision of the ZX-DU99D4. I've tried 3 different mobo's (all DU99D4) and none of them would get past error code 79 with more than 1 CPU installed. With 1 CPU installed it posts fine.
I've seen eBay listing with the older revision of this board paired with these CPUs and somehow have it working but I can't for the life of me. I know this is a peticular configuration issue but I figured I would reach out anyways. Any thoughts?
Thanks

I see a lot of people complaining about some models of v4 not working with dual  cpu boards. I just belive it's about microcode.
Send me your bios dump and I will try a microcode specific to your CPUs.
Boot with 1 cpu, do the bios dump, sent it here, I will mod to you. And you give us a feedback.

Not quite an issue but was hoping you might be able to point me in the right direction. I've been trying to get 2 E5-2697A V4 CPU's working in the v1.31 revision of the ZX-DU99D4. I've tried 3 different mobo's (all DU99D4) and none of them would get past error code 79 with more than 1 CPU installed. With 1 CPU installed it posts fine.
I've seen eBay listing with the older revision of this board paired with these CPUs and somehow have it working but I can't for the life of me. I know this is a peticular configuration issue but I figured I would reach out anyways. Any thoughts?
Thanks

I see a lot of people complaining about some models of v4 not working with dual cpu boards. I just belive it's about microcode. (This happens to Dell etc..)
Send me your bios dump and I will try a microcode specific to your CPUs.
Boot with 1 cpu, do the bios dump, sent it here, I will mod to you. And you give us a feedback.

I appreciate it! If this works I owe you big. I've zipped two of the BIOS' I pulled from two of my boards. The DU99-Stock.bin is the file from the board I have everything installed in right now. I have a CH341 so no worries about bricking.
DU99-Bios from 2 boards.zip

Dell R630 Server its full compatible with 2 X 2697A V4
Will look into dell bios code and let you know, soon as possible.

Can’t thank you enough! No rush either!
On Wed, Nov 13, 2024 at 12:19 AM Wagner @.***> wrote:

Dell R630 Server its full compatible with 2 X 2697A V4
Will look into dell bios code and let you know, soon as possible.
—
Reply to this email directly, view it on GitHub
https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/issues/21#issuecomment-2472315662,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANC2FMOV5YQBMBD73QH2FUT2ALD6HAVCNFSM6AAAAABRVMCPDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZSGMYTKNRWGI
.
You are receiving this because you authored the thread.Message ID:
@.***
com>

Man cross your fingers!
hope it fix, your bioses dont have the lastest microcode, now it have.
if dont work, flash back your original bios
[
DU99-Stock-NEWMICROCODE.zip
](url)
i know it was fast, but im getting fast on this haha

Man cross your fingers! hope it fix, your bioses dont have the lastest microcode, now it have. if dont work, flash back your original bios
[DU99-Stock-NEWMICROCODE.zip
i know it was fast, but im getting fast on this haha

You're the man! First successful POST with both CPU's in. Thank you!
On another note, do you have any resources on learning how you changed the microcode? I'm aware of UEFITool and using that to swap out the microcode hex but I have not gone through it myself. Is that how you did it?

 First successful POST with both CPU's in. Thank you!
On another note, do you have any resources on learning how you changed the microcode? I'm aware of UEFITool and using that to swap out the microcode hex but I have not gone through it myself. Is that how you did it?

All i know I got from try and error,  UEFITOOL is good to extract things, dont recomend to insert, I just use reverse eng concepts.
I do it on my free time, cause open source dont pay bills
If you wanna learn theres a lot of info on the Internet, read and read and soon you Will do more with less.

Send you a little donation as a token for my appreciation

If you can, I use PayPal, its there on the repo.
Your Board its a new revision (components changes)
I dont have these, but im happy that worked !

Hi, I having the exact same issue with my config (only boots with one CPU) and can't get it to work even with this bios (was really hoping).
I'm attaching my orig bios dump just in case you are able to make the tweak with it as a base to give it a try.
Thank you
BIOSDUMP.BIN.zip

Hi, thank you for your reply! I've already ordered a new udimm to try this,
I think I already have 1 dimm of the correct memory but I'm hoping both
processors require its own server memory, as a last try.
I think patching to  the latest with new ME made some difference as I
stopped getting the 79 error and started getting a bf
https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/tree/main/LASTEST-NEWME9
Will update here in case there are others with the same issue, been a year
now working this arround.
Thanks!
On Wed, Nov 20, 2024 at 6:25 AM Wagner @.***> wrote:

Hi, I having the exact same issue with my config (only boots with one CPU)
and can't get it to work even with this bios (was really hoping).
I'm attaching my orig bios dump just in case you are able to make the
tweak with it as a base to give it a try.
Thank you
BIOSDUMP.BIN.zip
https://github.com/user-attachments/files/17816645/BIOSDUMP.BIN.zip
V4 CPU dont accept to boot with UDIMM memory ( Desktop Memory) in Dual CPU
mode.
Its a IMC restriction.
Solution? Use ECC RAM ( Server Memory)
—
Reply to this email directly, view it on GitHub
https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/issues/21#issuecomment-2488322051,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALBV3EDUAL2O2DUWJSRIYJ32BRWQZAVCNFSM6AAAAABRVMCPDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOBYGMZDEMBVGE
.
You are receiving this because you commented.Message ID:
@.***
com>

Just a heads up from my experience, 2Rx4 registered ECC DIMMs were the only thing I was able to get booting. I had initially purchased 4 4Rx4 32GB DIMMs, no matter I couldn’t get it to boot.
Picked up 4 2Rx4 32GB DIMMs, worked like a charm. I believe it has to do with the amount of memory banks per stick which isn’t usually specified or marketed.

Hi, thank you for your reply! I've already ordered a new udimm to try this,
I think I already have 1 dimm of the correct memory but I'm hoping both
processors require its own server memory, as a last try.
I think patching to  the latest with new ME made some difference as I
stopped getting the 79 error and started getting a bf
https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/tree/main/LASTEST-NEWME9
Will update here in case there are others with the same issue, been a year
now working this arround.
Thanks!
On Wed, Nov 20, 2024 at 6:25 AM Wagner @.***> wrote:

Hi, I having the exact same issue with my config (only boots with one CPU)
and can't get it to work even with this bios (was really hoping).
I'm attaching my orig bios dump just in case you are able to make the
tweak with it as a base to give it a try.
Thank you
BIOSDUMP.BIN.zip
https://github.com/user-attachments/files/17816645/BIOSDUMP.BIN.zip
V4 CPU dont accept to boot with UDIMM memory ( Desktop Memory) in Dual CPU
mode.
Its a IMC restriction.
Solution? Use ECC RAM ( Server Memory)
—
Reply to this email directly, view it on GitHub
https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/issues/21#issuecomment-2488322051,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALBV3EDUAL2O2DUWJSRIYJ32BRWQZAVCNFSM6AAAAABRVMCPDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIOBYGMZDEMBVGE
.
You are receiving this because you commented.Message ID:
@.***
com>

The board will boot 2 x 26xx V4 even  with 1 RDIMM ECC . Tested by me.
The second processor dont need a memory for its own.

Hi thank you for the help. Indeed it's still booting on one cpu with the bios flashed to that exact release  https://github.com/jwagnervaz/DUAL-CPU-ZX-DU99D4-V1.31-BIOSMOD/tree/main/LASTEST-NEWME9
I can't really find the exact board version anywhere in the bios, but the board is almost a year old so I really guess is not the newest version.
Thanks to your comment I've realized that my memory's frequency is correct (2133MHz) but it's non-ECC which may be the issue afterall. I'll get the new one in a few days, fingers crossed.

Hi, following up on this I finally got the memory and @jwagnervaz was right, I finally got rid of 79 error when booting changing my Ram from no-ECC to ECC. I thought i got it right cause the mem I had was 2133 Mhz but it has to be ECC for it to boot with the two processors.
Thank you for your help, it took months to get it right.


update contract with suggestions from bug bounty and due to findings …

…in implementatoin.

I also question whether we still need the nonce system since we found the issue with the approve and cancelSubscription functionality


sw test tool: Fix typo

Just a small typo fix

The project doesn't use pull requests but pushed. Thanks a lot!

Thank you!


Manually created FISH1 Form rows not saving

Describe the bug
Manually created FISH1 Form rows appear not to be saving; certainly aren't available for editing.
To Reproduce
Steps to reproduce the behavior:

Manually add a row to a FISH1 Form
Save

Expected behavior
New row listed on FISH1 Form screen, available for editing
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):

Device: Multiple
Android version: 7.0
App version 0.5.2

Additional context
Add any other context about the problem here.

Fixed immediate problem in https://github.com/StAResComp/sifids/commit/0ec437cd422e57b680d29969fa58278a0f7559cf.
Problem with new rows not being displayed on first return to screen for form.

Problem with rows not displaying immediately fixed in https://github.com/StAResComp/sifids/commit/d3ce4fcdeffb91abdddd3c4f3b507999a4702433; same solution applied for forms in https://github.com/StAResComp/sifids/commit/271d17c4c48f1a64f0e268ebe29ed4de7cc52604


Disabling travis-ci emaill notification on success

Coverage remained the same at 59.357% when pulling 4659df42d55080fca09653c2986bb8d3a213c5db on hosseinsh-travis-ci-email into 9ad9f349bac1f963619de23e03f97813c8458ced on master.


Big scripts cause lag and crashes in lua

In the Lua text editor, big scripts will lag and crash, I was wondering if there is any way to fix this.

Did you ever figure this out?

yeah it segfaults, seems to be caused by stack overflow in some random regex function.
using where in gdb prints tens of thouthands of lines.

I had this exact issue, I replaced all regex things with the boost library equivalent which fixed this issue


Maven fails to build risev2g.evcc under Ubuntu 16.04.2 LTS (amd64)

If i try to build risev2g under Ubuntu 16.04 (amd64) i will always get a BUILD FAILURE:
Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.4.1:single (make-my-jar-with-dependencies) on project evcc: Error reading assemblies: Error locating assembly descriptor: file:/home/stefan/RISE-V2G/RISE-V2G-EVCC/src/assembly/bin.xml
Here some information about the environment:
stefan@Latitude-E4310:~/RISE-V2G$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.2 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.2 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

stefan@Latitude-E4310:~/risev2g$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-0ubuntu<IP_ADDRESS>-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)

stefan@Latitude-E4310:~/risev2g$ mvn -v
Apache Maven 3.3.9
Maven home: /usr/share/maven
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-openjdk-amd64/jre
Default locale: de_DE, platform encoding: UTF-8
OS name: "linux", version: "4.10.9-041009-generic", arch: "amd64", family: "unix"

Finally the complete build output:
stefan@Latitude-E4310:~/RISE-V2G$ mvn package
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for org.eclipse.risev2g:evcc:jar:1.0.0-SNAPSHOT
[WARNING] 'build.plugins.plugin.(groupId:artifactId)' must be unique but found duplicate declaration of plugin org.apache.maven.plugins:maven-assembly-plugin @ org.eclipse.risev2g:evcc:[unknown-version], /home/stefan/RISE-V2G/RISE-V2G-EVCC/pom.xml, line 60, column 12
[WARNING]
[WARNING] Some problems were encountered while building the effective model for org.eclipse.risev2g:secc:jar:1.0.0-SNAPSHOT
[WARNING] 'build.plugins.plugin.(groupId:artifactId)' must be unique but found duplicate declaration of plugin org.apache.maven.plugins:maven-assembly-plugin @ org.eclipse.risev2g:secc:[unknown-version], /home/stefan/RISE-V2G/RISE-V2G-SECC/pom.xml, line 49, column 12
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] risev2g.parent
[INFO] risev2g.shared
[INFO] risev2g.evcc
[INFO] risev2g.secc
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building risev2g.parent 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building risev2g.shared 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for net.sourceforge.openexi:nagasena:jar:0000.0002.0052.0 is missing, no dependency information available
[WARNING] The POM for net.sourceforge.openexi:nagasena-rta:jar:0000.0002.0052.0 is missing, no dependency information available
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ shared ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 8 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ shared ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ shared ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/stefan/RISE-V2G/RISE-V2G-Shared/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ shared ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ shared ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ shared ---
[INFO]
[INFO] --- maven-shade-plugin:2.4.1:shade (default) @ shared ---
[INFO] Including com.siemens.ct.exi:exificient:jar:0.9.6 in the shaded jar.
[INFO] Including com.siemens.ct.exi:exificient-core:jar:0.9.6 in the shaded jar.
[INFO] Including com.siemens.ct.exi:exificient-grammars:jar:0.9.6 in the shaded jar.
[INFO] Including xerces:xercesImpl:jar:2.11.0 in the shaded jar.
[INFO] Including xml-apis:xml-apis:jar:1.4.01 in the shaded jar.
[INFO] Including org.apache.logging.log4j:log4j-api:jar:2.1 in the shaded jar.
[INFO] Including org.apache.logging.log4j:log4j-core:jar:2.1 in the shaded jar.
[INFO] Including net.sourceforge.openexi:nagasena:jar:0000.0002.0052.0 in the shaded jar.
[INFO] Including net.sourceforge.openexi:nagasena-rta:jar:0000.0002.0052.0 in the shaded jar.
[WARNING] shared-1.0.0-SNAPSHOT.jar, exificient-0.9.6.jar define 31 overlapping classes:
[WARNING]   - com.siemens.ct.exi.api.sax.SAXDecoder$DocTypeTextLexicalHandler
[WARNING]   - com.siemens.ct.exi.util.SkipRootElementXMLReader
[WARNING]   - com.siemens.ct.exi.api.dom.SaxToDomHandler
[WARNING]   - com.siemens.ct.exi.api.stream.StAXDecoder
[WARNING]   - com.siemens.ct.exi.cmd.CmdOption
[WARNING]   - com.siemens.ct.exi.util.SimpleDocTypeParser
[WARNING]   - com.siemens.ct.exi.api.stream.StAXEncoder
[WARNING]   - com.siemens.ct.exi.api.stream.EmptyLocation
[WARNING]   - com.siemens.ct.exi.api.stream.StAXDecoder$1
[WARNING]   - com.siemens.ct.exi.api.stream.StAXEncoder$EncoderNamespaceContext
[WARNING]   - 21 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, log4j-core-2.1.jar define 554 overlapping classes:
[WARNING]   - org.apache.logging.log4j.core.config.xml.XmlConfiguration$Status
[WARNING]   - org.apache.logging.log4j.core.appender.ConsoleAppender$ConsoleManagerFactory
[WARNING]   - org.apache.logging.log4j.core.appender.AbstractManager
[WARNING]   - org.apache.logging.log4j.core.net.server.UdpSocketServer
[WARNING]   - org.apache.logging.log4j.core.async.AsyncLoggerContextSelector
[WARNING]   - org.apache.logging.log4j.core.config.plugins.visitors.PluginElementVisitor
[WARNING]   - org.apache.logging.log4j.core.appender.rolling.RollingFileManager$1
[WARNING]   - org.apache.logging.log4j.core.net.SslSocketManager$1
[WARNING]   - org.apache.logging.log4j.core.appender.db.jpa.JpaAppender
[WARNING]   - org.apache.logging.log4j.core.pattern.LineSeparatorPatternConverter
[WARNING]   - 544 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, exificient-core-0.9.6.jar define 208 overlapping classes:
[WARNING]   - com.siemens.ct.exi.types.AbstractTypeCoder
[WARNING]   - com.siemens.ct.exi.grammars.event.StartElement
[WARNING]   - com.siemens.ct.exi.io.channel.BitEncoderChannel
[WARNING]   - com.siemens.ct.exi.grammars.event.DocType
[WARNING]   - com.siemens.ct.exi.core.EXIBodyDecoderReordered$EndElementEntry
[WARNING]   - com.siemens.ct.exi.attributes.AttributeFactory
[WARNING]   - com.siemens.ct.exi.grammars.event.StartDocument
[WARNING]   - com.siemens.ct.exi.core.AbstractEXIBodyEncoder$ProfileDisablingMechanism
[WARNING]   - com.siemens.ct.exi.values.ValueType
[WARNING]   - com.siemens.ct.exi.grammars.event.Comment
[WARNING]   - 198 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, xercesImpl-2.11.0.jar define 952 overlapping classes:
[WARNING]   - org.apache.xerces.parsers.AbstractSAXParser
[WARNING]   - org.apache.xerces.xni.grammars.XMLGrammarDescription
[WARNING]   - org.apache.xml.serialize.SerializerFactoryImpl
[WARNING]   - org.apache.wml.WMLTdElement
[WARNING]   - org.apache.xerces.impl.io.Latin1Reader
[WARNING]   - org.apache.xerces.dom.DOMXSImplementationSourceImpl
[WARNING]   - org.apache.xerces.impl.dv.xs.Base64BinaryDV
[WARNING]   - org.apache.xerces.parsers.XIncludeAwareParserConfiguration
[WARNING]   - org.apache.xml.serialize.HTMLdtd
[WARNING]   - org.apache.xerces.dom.ElementDefinitionImpl
[WARNING]   - 942 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, xml-apis-1.4.01.jar define 346 overlapping classes:
[WARNING]   - org.w3c.dom.css.CSSValueList
[WARNING]   - org.w3c.dom.ProcessingInstruction
[WARNING]   - org.w3c.dom.html.HTMLBodyElement
[WARNING]   - javax.xml.validation.SecuritySupport$6
[WARNING]   - javax.xml.transform.SecuritySupport$3
[WARNING]   - org.w3c.dom.Entity
[WARNING]   - org.w3c.dom.ls.LSParserFilter
[WARNING]   - org.w3c.dom.html.HTMLMetaElement
[WARNING]   - javax.xml.stream.events.ProcessingInstruction
[WARNING]   - javax.xml.transform.stax.StAXResult
[WARNING]   - 336 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, log4j-api-2.1.jar define 81 overlapping classes:
[WARNING]   - org.apache.logging.log4j.message.LocalizedMessage
[WARNING]   - org.apache.logging.log4j.message.LocalizedMessageFactory
[WARNING]   - org.apache.logging.log4j.message.MessageFormatMessageFactory
[WARNING]   - org.apache.logging.log4j.ThreadContext$ContextStack
[WARNING]   - org.apache.logging.log4j.util.Strings
[WARNING]   - org.apache.logging.log4j.message.StructuredDataId
[WARNING]   - org.apache.logging.log4j.status.StatusData
[WARNING]   - org.apache.logging.log4j.message.LoggerNameAwareMessage
[WARNING]   - org.apache.logging.log4j.spi.LoggerContextFactory
[WARNING]   - org.apache.logging.log4j.simple.SimpleLoggerContext
[WARNING]   - 71 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, nagasena-rta-0000.0002.0052.0.jar define 66 overlapping classes:
[WARNING]   - org.openexi.scomp.ProtoGrammar
[WARNING]   - org.openexi.scomp.EXISchemaFactory$GrammarLocation
[WARNING]   - org.openexi.scomp.EventTypeCache$4
[WARNING]   - org.openexi.scomp.EventWildcardNS
[WARNING]   - org.openexi.scomp.EXISchemaFactoryExceptionXMsg
[WARNING]   - org.openexi.scomp.EventTypeCache$1
[WARNING]   - org.openexi.scomp.EXISchemaFactory$ComparableAttributeUse
[WARNING]   - org.openexi.scomp.EXISchemaReader$SchemaScannerFacade
[WARNING]   - org.openexi.scomp.EventTypeCache$8
[WARNING]   - com.thaiopensource.exi.xsd.regex.jdk1_4.Translator$Subtraction
[WARNING]   - 56 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, nagasena-0000.0002.0052.0.jar define 203 overlapping classes:
[WARNING]   - org.openexi.proc.EXIDecoder
[WARNING]   - org.openexi.proc.io.BitPackedScanner
[WARNING]   - org.openexi.proc.io.IntegerValueScriber$IntegerValue
[WARNING]   - org.openexi.proc.grammars.FragmentGrammar
[WARNING]   - org.openexi.proc.io.compression.ScannerChannelFactory
[WARNING]   - org.openexi.proc.grammars.BuiltinGrammar
[WARNING]   - org.openexi.proc.io.SimpleScanner$EXIEventSchemaMixedCharacters
[WARNING]   - org.openexi.proc.common.EventTypeList$1
[WARNING]   - org.openexi.proc.io.GYearValueScriber
[WARNING]   - org.openexi.proc.common.StringTable$1
[WARNING]   - 193 more...
[WARNING] shared-1.0.0-SNAPSHOT.jar, exificient-grammars-0.9.6.jar define 19 overlapping classes:
[WARNING]   - com.siemens.ct.exi.grammars.persistency.GrammarsPreperation
[WARNING]   - com.siemens.ct.exi.grammars.EXIContentModelBuilder$XSAttributeUseSort
[WARNING]   - com.siemens.ct.exi.grammars.persistency.GrammarIdDispenser$1
[WARNING]   - com.siemens.ct.exi.grammars.persistency.GrammarIdDispenser
[WARNING]   - org.apache.xerces.impl.xpath.regex.EXIRegularExpression
[WARNING]   - com.siemens.ct.exi.grammars.persistency.Grammars2JSON$1
[WARNING]   - com.siemens.ct.exi.grammars.XSDGrammarsBuilder
[WARNING]   - com.siemens.ct.exi.grammars.EXIContentModelBuilder$XSAttributeDeclarationSort
[WARNING]   - com.siemens.ct.exi.grammars.persistency.Grammars2JSON
[WARNING]   - com.siemens.ct.exi.grammars.persistency.GrammarsPreperation$1
[WARNING]   - 9 more...
[WARNING] maven-shade-plugin has detected that some class files are
[WARNING] present in two or more JARs. When this happens, only one
[WARNING] single version of the class is copied to the uber jar.
[WARNING] Usually this is not harmful and you can skip these warnings,
[WARNING] otherwise try to manually exclude artifacts based on
[WARNING] mvn dependency:tree -Ddetail=true and the above output.
[WARNING] See http://docs.codehaus.org/display/MAVENUSER/Shade+Plugin
[INFO] Replacing original artifact with shaded artifact.
[INFO] Replacing /home/stefan/RISE-V2G/RISE-V2G-Shared/target/shared-1.0.0-SNAPSHOT.jar with /home/stefan/RISE-V2G/RISE-V2G-Shared/target/shared-1.0.0-SNAPSHOT-shaded.jar
[INFO] Dependency-reduced POM written at: /home/stefan/RISE-V2G/RISE-V2G-Shared/dependency-reduced-pom.xml
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building risev2g.evcc 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ evcc ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 1 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.2:compile (default-compile) @ evcc ---
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ evcc ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /home/stefan/RISE-V2G/RISE-V2G-EVCC/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.2:testCompile (default-testCompile) @ evcc ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.17:test (default-test) @ evcc ---
[INFO] No tests to run.
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ evcc ---
[INFO]
[INFO] --- maven-assembly-plugin:2.4.1:single (make-my-jar-with-dependencies) @ evcc ---
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] risev2g.parent ..................................... SUCCESS [  0.185 s]
[INFO] risev2g.shared ..................................... SUCCESS [  2.798 s]
[INFO] risev2g.evcc ....................................... FAILURE [  0.489 s]
[INFO] risev2g.secc ....................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.733 s
[INFO] Finished at: 2017-07-22T11:41:26+02:00
[INFO] Final Memory: 16M/246M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.4.1:single (make-my-jar-with-dependencies) on project evcc: Error reading assemblies: Error locating assembly descriptor: file:/home/stefan/RISE-V2G/RISE-V2G-EVCC/src/assembly/bin.xml
[ERROR]
[ERROR] [1] [INFO] Searching for file location: /home/stefan/RISE-V2G/RISE-V2G-EVCC/file:/home/stefan/RISE-V2G/RISE-V2G-EVCC/src/assembly/bin.xml
[ERROR]
[ERROR] [2] [INFO] File: /home/stefan/RISE-V2G/RISE-V2G-EVCC/file:/home/stefan/RISE-V2G/RISE-V2G-EVCC/src/assembly/bin.xml does not exist.
[ERROR]
[ERROR] [3] [INFO] File: /home/stefan/RISE-V2G/file:/home/stefan/RISE-V2G/RISE-V2G-EVCC/src/assembly/bin.xml does not exist.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :evcc

Not sure this is related but on Windows 10, maven 3.3.9, Oracle Java 8 SE i will get this warning during build:
[WARNING] Configuration options: 'appendAssemblyId' is set to false, and 'classifier' is missing.
Instead of attaching the assembly file: C:\Users\stefan\RISE-V2G-EVCC\target\evcc-1.0.0-SNAPSHOT.jar, it will become the file for main project artifact.
NOTE: If multiple descriptors or descriptor-formats are provided for this project, the value of this file will be non-deterministic!
[WARNING] Replacing pre-existing project main-artifact file: C:\Users\stefan\RISE-V2G-EVCC\target\evcc-1.0.0-SNAPSHOT.jar
with assembly file: C:\Users\stefan\RISE-V2G-EVCC\target\evcc-1.0.0-SNAPSHOT.jar

I am not a Maven expert to be honest. Will look into it when I have more time. Do you have any updates on this issue?

This issue still persists. Currently i don't have the time for investigations. It seems to me a very trivial issue, because the protocol part "file:" is within the search string.

In my Linux Ubuntu LTS environment the maven build is working fine. The difference to lategoodby environment is, that I'm using a bit newer version (some updates). Maybe this is your problem!?
mkupke@DE100454LX:~/V2GClarity/RISE-V2G$ java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)

mkupke@DE100454LX:~/V2GClarity/RISE-V2G$ mvn -version
Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2017-04-03T21:39:06+02:00)
Maven home: /opt/apache-maven-3.5.0
Java version: 1.8.0_144, vendor: Oracle Corporation
Java home: /opt/jdk1.8.0_144/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-62-generic", arch: "amd64", family: "unix"

mkupke@DE100454LX:~/V2GClarity/RISE-V2G$ cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial

Hopefully this helps.
Best regards,
Martin Kupke

Hi Martin,
i already updated to 16.04.3 but its still using Maven 3.3.9. It's possible that you are using non-default PPAs or installed Maven manually?

I installed Maven manually to /opt and adapted PATH variable that mvn is found under /opt/apache-maven-3.5.0/bin
'''
wget http://www-eu.apache.org/dist/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gz
tar -xvf apache-maven-3.5.0-bin.tar.gz
'''
Nothing "non-default", only standard things. I didn't install maven by package manager (e.g. apt), because following the link of Eclipse with the description and clicking on Maven I got to the website
http://maven.apache.org/download.cgi
and there is version 3.5.0 named as the current version. The package manager installed an older version.

I installed Maven manually to /opt and adapted PATH variable that mvn is found under /opt/apache-maven-3.5.0/bin
'''
wget http://www-eu.apache.org/dist/maven/maven-3/3.5.0/binaries/apache-maven-3.5.0-bin.tar.gz
tar -xvf apache-maven-3.5.0-bin.tar.gz
'''
Nothing "non-default", only standard things. I didn't install maven by package manager (e.g. apt), because following the link of Eclipse with the description and clicking on Maven I got to the website
http://maven.apache.org/download.cgi
and there is version 3.5.0 named as the current version. The package manager installed an older version.

Thanks. I also installed maven manually and issue doesn't occured anymore. This solution is acceptable for a developer, but not for "real life".

I committed a new version of RISE V2G: babd2ee
This update focuses a lot on Maven. The previous Maven files (pom.xml files) were not configured in a correct way. I spent a lot of time the past few days with reading through the Maven documentation and testing the final configuration on my Mac as well as on a Windows machine. Don't have Ubuntu installed yet.
I use Maven 3.5.0, but I think it should work with your older Maven version as well.
Please check out the latest version (it's not a release yet) and navigate to the RISE-V2G-Parent folder on your command line. Now in this folder, type "mvn clean install". This should produce the necessary .jar files for the SECC and the EVCC in the respective "/target" folders of each project, along with the keystores and .properties file.
Please let me know if this solves your problem.

Wonderful, this fixed the issue (tested with Maven 3.3.9, Ubuntu 16.04.3).


Is it possible to support Optional

Server code
// DB Model
class User
{
  public uint Id { get; set; }
  public string? StatusMessage { get; set; } // nullable
}

// HTTP Model
[TranspilationSource]
class UpdateUserRequest
{
  public int UserId { get; set; }
  [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
  public Optional<string?> StatusMessage { get; set; }
}

// Controller
[HttpPatch]
public IActionResult UpdateUser(UpdateUserRequest request)
{
  var user = DB.FindUserById(request.UserId);

  // if status_message is provided, update it
  if (request.StatusMessage.HasValue) {
    user.StatusMessage = request.StatusMessage;
    DB.Update(user);
  }

  // if (request.Prefecture.HasValue) { /* ... */ }
  // if (request.FirstName.HasValue) { /* ... */ }
  // if (request.LastName.HasValue) { /* ... */ }
  // if (request.BirthDay.HasValue) { /* ... */ }
  // ...
}

HTTP Request example
PATCH /api/user HTTP/1.1
Content-Type: application/json

{ "user_id": 1, "status_message": "I'm fine" }

I want to know JSON string parameter is null or  undefined.
For example,

Request
Update DB?

{ "user_id": 1, "status_message": "I'm fine" }
Yes. Value is I'm fine

{ "user_id": 1, "status_message": "" }
Yes. Value is ``

{ "user_id": 1, "status_message": null }
Yes. Value is null

{ "user_id": 1 }
No.

But, Tapper is not supported it.
Could you support it?
Or, do you have some other good ideas?
Ref:

https://stackoverflow.com/a/71074603/4771485
https://tnakamura.hatenablog.com/entry/2020/02/03/how-to-differentiate-between-null-and-non-existing-data-in-json-in-asp-net-core-mvc

First, the class Optional<T> does not exist in the standard library. It would help if you showed an implementation of Optional<T>.
I assume that Optional<T> is a type like System.Nullable<T>, but there are two challenges.
First, Tapper needs to support user-defined generics types. This feature could be done with time.
Second, you must implement a custom JsonConverter to get the desired JSON string. And since custom JsonConverter is highly flexible, it is difficult for Tapper to support it.

Optional<T>  implementation is here.
How about implement attribute, that force emit TypeScript type attributes.
Like TranspilationSourceForceType.
Input
// UpdateUserRequest.cs
[TranspilationSource]
class UpdateUserRequest
{
  public int UserId { get; set; }

  // [TranspilationSourceForceType(Type = TypeScriptType.String | TypeScriptType.Null | TypeScriptType.Undefined)]
  [TranspilationSourceForceType(TypeString = "(string | undefined"), Nullable = true)]
  [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingDefault)]
  public Optional<string?> StatusMessage { get; set; }
}

Output
// UpdateUserRequest.ts
/** Transpiled from UpdateUserRequest */
export type ConfigInfo = {
  /** Transpiled from uint */
  userId: number;
  /** Transpiled from unknown(Defined by user) */
  statusMessage?: (string | undefined);
}

It seems like a good idea.

I would also like to be able to specify the explicit output type. I've got a struct that wraps a string, when serialized it's just turned into a string so I'd like to represent that in TS


[WIP] Implement update firmware by diag feature

# Background
To enable diag API and develop diag spirom firmware update feature for emc platforms.
Details

RackHD will communicate with diag via diag RESTful APIs
Diag udpate SPI firmware jog will get diag/node IP from context instead of lookups. #470 https://github.com/RackHD/on-http/pull/685
Update SPIROM firmware process:
Run diag discovery => upload image file to diag => get SPIROM update API => run SPIROM update API => Run diag warmReset

Paired with @nortonluo
@iceiilin @nortonluo @anhou

@iceiilin @nortonluo

BUILD on-tasks #152 : FAILURE

BUILD on-tasks #152  Error Logs  ▼Test Name: update spirom by diag upload image api tests should report image does not exist
Error Details: timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
Stack Trace: Error: timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
Test Name: Graph Library "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/graph-library-spec.js:33:13)
Test Name: Taskgraph.Services.Api.Workflows "before all" hook: Http.Services.Api.Workflows before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:45:13)
Test Name: Taskgraph.Services.Api.Workflows "after all" hook
Error Details: Should wrap property of object
Stack Trace: TypeError: Should wrap property of object
at Object.wrapMethod (node_modules/sinon/lib/sinon/util/core.js:67:23)
at Object.stub (node_modules/sinon/lib/sinon/stub.js:67:26)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:125:15)
Test Name: Taskgraph.Services.Api.Tasks "before all" hook: Taskgraph.Services.Api.Tasks before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/task-api-service-spec.js:42:13)
Test Name: Task Scheduler "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:86:21)
Test Name: Task Scheduler "after all" hook
Error Details: Cannot read property 'set' of undefined
Stack Trace: TypeError: Cannot read property 'set' of undefined
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:118:22)
Test Name: TaskGraph.Runner "before all" hook: setup depedencies
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-graph-runner-spec.js:39:13)
Test Name: Loader "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/loader-spec.js:16:13)

BUILD on-tasks #155 : FAILURE

BUILD on-tasks #155  Error Logs  ▼Test Name: update spirom by diag upload image api tests should report image does not exist
Error Details: timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
Stack Trace: Error: timeout of 10000ms exceeded. Ensure the done() callback is being called in this test.
Test Name: Loader "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/loader-spec.js:16:13)
Test Name: Taskgraph.Services.Api.Workflows "before all" hook: Http.Services.Api.Workflows before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:45:13)
Test Name: Taskgraph.Services.Api.Workflows "after all" hook
Error Details: Should wrap property of object
Stack Trace: TypeError: Should wrap property of object
at Object.wrapMethod (node_modules/sinon/lib/sinon/util/core.js:67:23)
at Object.stub (node_modules/sinon/lib/sinon/stub.js:67:26)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:125:15)
Test Name: Taskgraph.Services.Api.Tasks "before all" hook: Taskgraph.Services.Api.Tasks before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/task-api-service-spec.js:42:13)
Test Name: Graph Library "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/graph-library-spec.js:33:13)
Test Name: Task Scheduler "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:86:21)
Test Name: Task Scheduler "after all" hook
Error Details: Cannot read property 'set' of undefined
Stack Trace: TypeError: Cannot read property 'set' of undefined
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:118:22)
Test Name: TaskGraph.Runner "before all" hook: setup depedencies
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-graph-runner-spec.js:39:13)

BUILD on-tasks #156 : FAILURE

BUILD on-tasks #156  Error Logs  ▼Test Name: Graph Library "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
    at require (internal/module.js:12:17)
    at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
    at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
    at require (internal/module.js:12:17)
    at node_modules/on-core/lib/di.js:530:24
    at arrayMap (node_modules/lodash/index.js:1406:25)
    at Function.map (node_modules/lodash/index.js:6710:14)
    at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
    at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
    at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
    at require (internal/module.js:12:17)
    at Context.<anonymous> (spec/lib/graph-library-spec.js:33:13)
Test Name: Taskgraph.Services.Api.Workflows "before all" hook: Http.Services.Api.Workflows before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:45:13)
Test Name: Taskgraph.Services.Api.Workflows "after all" hook
Error Details: Should wrap property of object
Stack Trace: TypeError: Should wrap property of object
at Object.wrapMethod (node_modules/sinon/lib/sinon/util/core.js:67:23)
at Object.stub (node_modules/sinon/lib/sinon/stub.js:67:26)
at Context.<anonymous> (spec/lib/services/workflow-api-service-spec.js:125:15)
Test Name: Taskgraph.Services.Api.Tasks "before all" hook: Taskgraph.Services.Api.Tasks before
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/services/task-api-service-spec.js:42:13)
Test Name: Task Scheduler "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:86:21)
Test Name: Task Scheduler "after all" hook
Error Details: Cannot read property 'set' of undefined
Stack Trace: TypeError: Cannot read property 'set' of undefined
at Context.<anonymous> (spec/lib/task-scheduler-spec.js:118:22)
Test Name: TaskGraph.Runner "before all" hook: setup depedencies
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/task-graph-runner-spec.js:39:13)
Test Name: Loader "before all" hook
Error Details: Cannot find module 'request-promise'
Stack Trace: Error: Cannot find module 'request-promise'
at require (internal/module.js:12:17)
at Object.<anonymous> (node_modules/on-tasks/lib/utils/job-utils/diag-tool.js:7:15)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at node_modules/on-core/lib/di.js:530:24
at arrayMap (node_modules/lodash/index.js:1406:25)
at Function.map (node_modules/lodash/index.js:6710:14)
at Object.requireGlob (node_modules/on-core/lib/di.js:529:14)
at Object.<anonymous> (node_modules/on-tasks/index.js:17:21)
at Object.Module._extensions.(anonymous function) [as .js] (node_modules/istanbul/lib/hook.js:109:37)
at require (internal/module.js:12:17)
at Context.<anonymous> (spec/lib/loader-spec.js:16:13)


restore nics status into origin one to avoid side-effect for following cases.

use new env for cases which will change nics
store nics status before testing, restore them after testing, not put it into test case cleanup, since it will affect following cases.

will update PR tomorrow

@squirrelsc anything need update?


Huge redo + Added entries from another MK list

Essentially, I feel that pretty much every language on the planet (Especially those who have Firefox or Chrome translations) should have an adblock list included in at least one adblocker.
Currently there seems to be 2 Macedonian lists out there (of which your list is one of them), neither of which currently seem like a clearcut candidate for AdGuard or AdBlock, let alone uBlock Origin with how strict those guys have been in the past couple years.
So in an attempt to kickstart things again and have another language be represented in extensions, I carried over entries from the other Macedonian list that I know about, which has been kept much more actively maintained, but which has too few entries to make it into extensions (except "AdGuard Home")
I also ran the resulting list through https://abp.surge.sh/redundantRuleChecker/, leading to a more lean and slim list.

@DandelionSprout thank you for bringing the project back to life.

I also ran the resulting list through https://abp.surge.sh/redundantRuleChecker/, leading to a more lean and slim list.

@DandelionSprout The link is dead, is there a new site?

Thankfully there is: https://abpvn.com/ruleChecker/redundantRuleChecker.html

Thanks. I presume this doesn't take into account uBO syntax.


Continue the work?

Hi, just wanted to ping you, I'd love to see you continue and finish this project.
It is pretty cool and there is too little information about neoism out there anyway.
If you get it done I'm happy to put it on the go developer page on neo4j.com :)
Thanks !!

@jexp So weird, I was just rebuilding my docker image for neo4j to use the phusion/baseimage
Yea, I'd love to.  Maybe in a week or two I can pick it back up?

Amazing, thanks so much. Ping me when you are good to go.


Introduce useMetadata option, document keys option

Inspired from metalsmith-jade, I added a useMetadata option, so Metalsmith metadata is passed to Marked.
I also documented the keys option in the README.

Any comments on this? Seems that there is no interest in updating this plugin.

Closing this one in order to open the same pr under another base branch.