Get header position for item view

I want to scroll to the header position when i click on item, but i cant find a way outside the library to get the header position for an item object

Id like that also...

same problem here

Hello, do you mean to click on the header item or on any item that belongs to the header?

when the header at the top of the screen, with every click the listener callback will be called with position = 0

I've looked into this library, actually the method findHeaderViewUnder returns the view, if instead, it returned the Long position associated, you have the relative headerId.
BUT...
this makes the cache not usable as intended to be, because it returns the first entry where the coordinates of click event occurs, which is not always the case because scanning that cache you have many views that will match that coordinates, this will return the wrong id in most of the cases, so you should always have 1 view in that cache -> this makes the cache not usable but you have that id...
Also you cannot rely on the ViewHolder because the view we see, it's just drawn (translated at top=0) and it is not part of the RecyclerView anymore because is being recycled...
I've started to use this sticky header decoration in my project, but now the class is totally different with lot of optimization. I have just made a test locally and in my project I am able to return directly the unique Adapter item object associated to that header view and with that item object you can retrieve also the real position to scroll to, BUT again, cache must contain max 1 view and I do know what is better.

I've solved the problem that the position is 0 if the header is at the top. You can find the solution at #117


caffe_proto file

can you release the modified caffe.proto?

There are no modifications in caffe.proto as the additional layer (AxpyLayer) do not require a specific layer_param.


Doesn't evaluate expressions

This a handy idea but it doesn't cover my use case. I have two variables in my JavaScript file;
module.exports = {a: '300px', b: 1.5};

Then the LESS uses them and multiples them together and uses them in a media query.
a.less:
@c: @a * @b;

b.less:
@import "a";
@media (min-width: (@c)) {
// ...

Instead of the result being @media (min-width: (450px)) {, it's @media (min-width: (300px * 1.5)) {.

Hi,
Sorry if I answer only now, but have been busy days.
I didn't understand clearly your example, in the sense that I would use directly the JSON file with the variables a and b, if the javascript file is static.
But if is a result of your code execution, for example you can do this:
module.export = {
          createVariable: function(){}
}

...

gulp.task('generate less variables', function() {
  return gulp.src('less/**/*.less')
    .pipe(lessVars(yourModule.createVariable()))
    .pipe(gulp.dest('dist'));
});


wrapContentHeight()

Is there anyway we can use Modifier.wrapContentHeight() for Zoomable's modifier?

Currently, Zoomable is using BoxWithConstraints and takes its maxWidth and maxHeight, so it's not likely to have support for  wrapContent*.
And I wonder, if Zoomable does support wrapContent*, what will the behavior be like? Will the Zoomable size change after zoom in/out?

Ideally, the Zoomable will take the size of the content. However, the size should not change when zooming in/out.

One way to achieve this, in the library, is to manipulate the graphicsLayer, or the transformable modifier, instead of layout. I believe that way the original layout/sizing of the content will be preserved.


Should have better error messages when input files aren't files

The hashtag for my bindgen version is 4dd4ac7 .
folder is just an empty directory. Should we provide a more friendly error message?
$ RUST_BACKTRACE=1 bindgen folder/
thread 'main' panicked at 'TranslationUnit::parse failed', /checkout/src/libcore/option.rs:819:4
stack backtrace:
   0: std::sys::imp::backtrace::tracing::imp::unwind_backtrace
             at /checkout/src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::_print
             at /checkout/src/libstd/sys_common/backtrace.rs:71
   2: std::panicking::default_hook::{{closure}}
             at /checkout/src/libstd/sys_common/backtrace.rs:60
             at /checkout/src/libstd/panicking.rs:380
   3: std::panicking::default_hook
             at /checkout/src/libstd/panicking.rs:396
   4: std::panicking::rust_panic_with_hook
             at /checkout/src/libstd/panicking.rs:611
   5: std::panicking::begin_panic_new
             at /checkout/src/libstd/panicking.rs:553
   6: std::panicking::begin_panic_fmt
             at /checkout/src/libstd/panicking.rs:521
   7: rust_begin_unwind
             at /checkout/src/libstd/panicking.rs:497
   8: core::panicking::panic_fmt
             at /checkout/src/libcore/panicking.rs:92
   9: core::option::expect_failed
             at /checkout/src/libcore/option.rs:819
  10: <core::option::Option<T>>::expect
             at /checkout/src/libcore/option.rs:302
  11: bindgen::ir::context::BindgenContext::new
             at src/ir/context.rs:348
  12: bindgen::Bindings::generate
             at src/lib.rs:1447
  13: bindgen::Builder::generate
             at src/lib.rs:978
  14: bindgen::main::{{closure}}
             at src/main.rs:55
  15: std::panicking::try::do_call
             at /checkout/src/libstd/panicking.rs:479
  16: __rust_maybe_catch_panic
             at /checkout/src/libpanic_unwind/lib.rs:98
  17: std::panicking::try
             at /checkout/src/libstd/panicking.rs:458
  18: std::panic::catch_unwind
             at /checkout/src/libstd/panic.rs:361
  19: bindgen::main
             at src/main.rs:54
  20: __rust_maybe_catch_panic
             at /checkout/src/libpanic_unwind/lib.rs:98
  21: std::rt::lang_start
             at /checkout/src/libstd/panicking.rs:458
             at /checkout/src/libstd/panic.rs:361
             at /checkout/src/libstd/rt.rs:59
  22: main
  23: __libc_start_main
  24: _start

Hi! If you have any questions regarding this issue, feel free to make a comment here, or ask it in the #servo channel in IRC.
If you intend to work on this issue, then add @highfive: assign me to your comment, and I'll assign this to you. :smile:

Thanks for the bug report!
To whoever wants to pick this up: the Bindings::generate function in src/lib.rs should loop through each of the options.input_headers and verify that they are paths to files (not folders; see std::fs::Metadata::is_file) and that we have read permissions to access them (std::fs::Permissions from std::fs::Metadata::permissions). If we don't have read access, or one isn't a file, then we should print a relevant error message.

@highfive: assign me
I would like to have a go at this

Hey @seemyvest! Thanks for your interest in working on this issue. It's now assigned to you!

@seemyvest if you have any questions don't hesitate to ask :)

Sorry it's been a while, I do have a few questions.

Do we still want to panic? I was thinking that we catch it here before generating the bindings.
Is only <header> to be checked, or the arguments passed to clang as well? As far as I can tell there's only one <header> argument, but the way you described it it sounds like there can be more than one.
The only way to check permissions with std::fs::Permissions is with readonly, which actually only returns true if no write permissions are set (the Linux implementation). Without using std::os::unix::PermissionsExt I'm not sure how to check if the read bit is set, but that won't work with Windows.

Thanks for the help :)

Do we still want to panic? I was thinking that we catch it here before generating the bindings.

Ideally we won't panic, and will return an Err instead. This is why I pointed out Bindings::generate in src.lib.rs as a good place to put these checks, because it returns a Result.

Is only  to be checked, or the arguments passed to clang as well? As far as I can tell there's only one  argument, but the way you described it it sounds like there can be more than one.

The other benefit to doing the checking inside Bindings::generate is that the checking can apply to both when folks are using bindgen as an executable and when using it as a library in build.rs. Indeed, the executable only takes one header, but the bindgen::Builder::header method, when using bindgen as a library, can be called any number of times to generate bindings to multiple header files. That's why options.input_headers is a Vec.

The only way to check permissions with std::fs::Permissions is with readonly, which actually only returns true if no write permissions are set (the Linux implementation). Without using std::os::unix::PermissionsExt I'm not sure how to check if the read bit is set, but that won't work with Windows.

readonly clearly isn't what we want :-p
How about two versions of the function?
#[cfg(unix)]
fn can_read(perms: &std::fs::Permissions) -> bool {
    use std::os::unix::PermissionsExt;
    perms.mode() & 0o0444 > 0
}

#[cfg(not(unix))]
fn can_read(_: &std::fs::Permissions) -> bool {
    true
}

Thanks for the help :)

No problem! Let me know if anything I said isn't clear :)

Fixed in #1092


Timeline Detail

The amount of detail on the timeline (dots and numbers) should vary based on the number of pixels per beat. As we zoom out, we should display less detail and more detail when we zoom in.
Try zooming in and out on GridSound and you will see the correct implementation. This issue is currently blocked my the timeline which isn't in develop yet.

Will be merged in soon in the PR for #73


Research documentation options for the component API

In a max. 1hr timebox, research what solutions we could use to document the component API. The main goal of this is to find a solution that

[ ] makes it possible to add helpful examples
[ ] makes it possible to add details docs for each prop in the component API.

TypeDoc
Pros:

lots of Github stars, actively maintained
Straighforward API https://github.com/TypeStrong/typedoc/blob/v0.25.13/example/src/classes/CancellablePromise.ts#L101
OK-looking generated docs https://typedoc.org/example/classes/CancellablePromise.html
Can generate markdown via https://www.npmjs.com/package/typedoc-plugin-markdown
Cons:
Examples are not typechecked

API Extractor
Pros:

Can generate docs, incl. Markdown (https://api-extractor.com/pages/setup/generating_docs/#using-api-documenter-to-generate-markdown)
Cons:
Not a one-stop shop https://api-extractor.com/pages/overview/demo_docs/ (generates JSON file, needs other tools to transform it to md or website)

CompoDoc


Connect Error

Describe the bug
The test connection reported an error and could not be connected at all.
Steps to reproduce

Environment building success
Fill in the binance apikey
connect binance or connect occurred errors.

Release version
1.25.0
Type of installation
Source
Attach required files

hi @zztonys from the logs looks like you're in restricted location or your internet connection is too slow

Solved


Decompilation fails on calling the same module twice

Bicep version
Bicep CLI version 0.3.1 (d0f5c9b164)
Describe the bug
main.bicep
param rgNames array

module m1 'module.bicep' = {
  name: 'foo'
  scope: resourceGroup(rgNames[0])
}

module m2 'module.bicep' = {
  name: 'foo'
  scope: resourceGroup(rgNames[1])
}

module.bicep is an empty file
To Reproduce
bicep build main.bicep
bicep decompile main.json

Decompilation failed with fatal error "[39:21]: Unable to generate duplicate module to path $file:///C:/path/to/nested_Microsoft_Resources_deployments_foo.bicep for Microsoft.Resources/deployments foo"

Additional context
Related to #1725

Out of curiosity, why are you decompiling after immediately compiling? The decompiler is meant to be a transition tool, but not a lossless converter back and forth. IOW, once your template is turned into bicep code, you shouldn't need to go back and forth.

closing for now, but feel free to reopen with additional context


"Implemented 0/1 knapsack problem in python"

Fixes: #59

Dear @Rathish-Rajendran
Thank you for your valuable contribution! Your pull request has been successfully reviewed and meets the necessary criteria for merging.
We appreciate your dedication and effort in improving our project. Your contributions are highly valuable to the community.
Don't forget to star the repository if you haven't already. Your support means a lot to us!
I will proceed with merging your changes. If you have any further contributions or suggestions, please feel free to share them with us.
Thanks again for your commitment to our project.
Best regards, @Tinny-Robot

Thanks @Tinny-Robot !
Can you kindly add the "hacktoberfest-accepted" label as well?


The sessionId property on SessionProvider should be optional

Search terms you've used
sessionId, sessionProvider, optional
Bug description
The type definition of  says that the sessionId prop is required, but solid-client-authn-browser can generate its own if none is passed.
To Reproduce

Try to leave out the seessionId prop in e.g. VSCode.

Expected result
No error.
Actual result
A red squiggly line saying a prop is missing.
Environment
Please run
npx envinfo --system --npmPackages --binaries --npmGlobalPackages --browsers
in your project folder and paste the output here:
$ npx envinfo --system --npmPackages --binaries --npmGlobalPackages --browsers
  System:
    OS: Linux 5.4 Ubuntu 20.04.1 LTS (Focal Fossa)
    CPU: (4) x64 Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
    Memory: 166.32 MB / 7.51 GB
    Container: Yes
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 12.18.3 - ~/.nvm/versions/node/v12.18.3/bin/node
    Yarn: 1.22.5 - /usr/bin/yarn
    npm: 6.14.6 - ~/.nvm/versions/node/v12.18.3/bin/npm
  Browsers:
    Chrome: 86.0.4240.111
    Firefox: 82.0
  npmPackages:
    @inrupt/solid-client: ^0.6.1 => 0.6.1
    @inrupt/solid-ui-react: ^1.5.1 => 1.5.1
    @types/node: ^14.14.2 => 14.14.2
    @types/react: ^16.9.53 => 16.9.53
    @types/uuid: ^8.3.0 => 8.3.0
    localforage: ^1.9.0 => 1.9.0
    next: 9.5.5 => 9.5.5
    react: 17.0.1 => 17.0.1
    react-dom: 17.0.1 => 17.0.1
    sass: ^1.28.0 => 1.28.0
    typescript: ^4.0.3 => 4.0.3
    uuid: ^8.3.1 => 8.3.1
  npmGlobalPackages:
    npm: 6.14.6

Additional information

N/A

This has been fixed on #187


type of json column in auto-created table

Thanks for a great transform. I'm trying to use it and it creates a new table for the topic but the jsondata field is set to type 'text' instead of json in PostgreSQL. Is that correct or am I doing something wrong?
This is the config:
connector.class=io.confluent.connect.jdbc.JdbcSinkConnector
auto.create=true
..
transforms=tojson
transforms.tojson.type=com.github.cedelsb.kafka.connect.smt.Record2JsonStringConverter$Value
transforms.tojson.json.string.field.name=jsondata
transforms.tojson.post.processing.to.xml=false
This is the SQL in pgAdmin for the newly created table:
CREATE TABLE public."TILLCODES_1"
(
jsondata text COLLATE pg_catalog."default" NOT NULL,
"ID" text COLLATE pg_catalog."default" NOT NULL,
CONSTRAINT "TILLCODES_1_pkey" PRIMARY KEY ("ID")
)

Unfortunately the JDBC Sink generates Text columns and the SMT cannot really influence that. That mapping from Connect data type to postgres datatype is deep in the java code of connect itself. The only way I found to influence that would had been to directly modify code in kafka connect jdbc sink.
If you google about that you'll see many folks having issues with the mapping between kafka connect record data types and DB datatypes as it is quite static in JDBC Sink Connector.
How I workarrounded it in several use-cases in the past was to:

Disable the auto creation of the table
Create the table manually (or by the Schema Management of the target system) with proper data types but same table and field names.

On some pipes with oracle as target this worked with XML columns. I never tried it with postgres but I assume it should work

Thank you for the explanation. Creating the table manually with json data type for the column does work.


Accessors

From the original less.rb tests, this test doesn't pass.
.magic-box {
    color: red;
}
.class {
    color: .magic-box['color'];
}

it fails on the [

@cloudhead: That's a shame, I could really see potential for "OO" organization in them (Issue #564).
I assume we have to wait at least till version 2 now?

@cloudhead: I've been google searching for days too see if this was possible with LESS. Is there a chance of it in the future? On a complex site I could be looking at all kinds of variables and it'd be great to be able to organize them inside mixins and be able to access them from other sources.

vars.less:
    .colors() {
        @blue: #234;
        @red: #b3452;
        etc...
    }
    .grid() {
        @col-width: 5em;
        @col-gutter: 1em;
    }

main.less:

@import "vars";
    .alert {
        width: .grid[@col-width] * 12;
        margin: 0 (@col-gutter/2) 0 (@col-gutter/2)
        color: .colors[@red];
        background: lighten(.colors[@red], 50%);
    }

This would be INSANELY helpful. Is there hope?

@mindfullsilence: @col-gutter or .grid[@col-gutter]? I don't think there's hope for this tho...

Fixed, thanks for pointing it out. I guess it's not that big of a deal, I can always seperate variables in my stylesheet. But I have a few frameworks I've built and I like to use pieces from each one on occassion. So I prepend each variable with the name of my framework. It'd save a lot of time building these frameworks out if I could do something like this:

fw-1.less:

    .fw-1_colors() {
        @red: #2345ba;
        @blue: #928342;
    }

fw-2.less:
    fw-2_colors() {
        @red: #239401;
        @blue: #293872;
    }

Without this option, I end up prefixing every variable I have:

    @fw-1_red: #2345ba;
    @fw-2_red: #239401;
    @fw-1_blue: #928342;
    @fw-2_blue: #293872;

Some of my frameworks do as much as the twitter bootstrap, and end up having a LOT of variables. Be a lot easier to write these frameworks if I could just set them inside of a wrapping mixin.

have you tried
#namespace {
   @blue: blue;
}

.class {
   #namespace;
   color: @blue;
}

I'd like to hear from @cloudhead whether this is a feature or a bug though (it could cause collisions if your using functions written by someone else)


[µTMV] apps: Fix Zephyr code example for STM32F746 boards

Hi,
Could the following changes be reviewed please?
They aim to make microTVM (HEAD) work again for STM32F746 disco board.
Commit c39a6e25d "Clean up uTVM demo runtime, add ONNX model test and
tutorial (#7557)" changed the location of the Zephyr code example to
apps/ so this commit updates the tutorial examples under tutorials/micro
to reflect the new location where src/main.c resides.
Since commit c39a6e25d also split Zephyr configuration per boards,
under project's boards/, this commits also adds a proper config for the
STM32F746 Discovery board and fixes a nit in the comment in
boards/nucleo_f746zg.conf. It also removes CONFIG_MAIN_STACK_SIZE=50 for
disco and nucleo boards since the MCUs for both boads are Cortex-m7
based, not Contex-m33.
For the new boards/stm32f746g_disco.conf board config file
CONFIG_TEST_RANDOM_GENERATOR=y is set
otherwise when CONFIG_ENTROPY_GENERATOR=y linkage will fail with:
rand32.h:33: undefined reference to `z_impl_sys_rand32_get'
Finally this commit sets the UART ring buffer size back to 512 bytes,
only for disco and nucleo boards, otherwise the new value introduced
by commit c39a6e25d makes noinit section not fitting the SRAM region
on these devices, so linkage fails with:
ld: zephyr_prebuilt.elf section noinit' will not fit in region SRAM'
ld: section .intList VMA [0000000020050000,00000000200500e7] overlaps section noinit VMA [000000002004f5d8,0000000020050317]
ld: region `SRAM' overflowed by 792 bytes
Signed-off-by: Gustavo Romero<EMAIL_ADDRESS>Thanks and best regards,
Gustavo

@mdw-octoml @mehrdadh @areusch Hi folks. I'm wondering if I could get a review for that change from you :)

hm, I wonder if the test failure is due to CONFIG_MAIN_STACK_SIZE?

@areusch yeah you are right. Yesterday I tested without this flag and large memory size which gives error. You can either set the CONFIG_MAIN_STACK_SIZE flag or limit memory in "main.c". Not sure which one makes more sense here.

@areusch @mehrdadh are you talking about the current CI error (https://ci.tlcpack.ai/blue/organizations/jenkins/tvm/detail/PR-7772/3/pipeline) ?

@gromero yeah

@gromero I think this hit #7590. can you push an empty commit to retrigger?

@mehrdadh @mdw-octoml @areusch Hi folks, Finally the CI is happy with my changes plus it didn't give up testing it and completed fine :) Could I get reviews for that new version, please?

LGTM!
Thanks @gromero!

Thanks @areusch !


[visualstudio2017-workload-vctools] Installing on Windows Server 2022 container fails with docker build

Hi everyone,
I was trying to install this on a Windows Server 2022 docker container mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2022 using docker build and it appears that the script gets stuck here indefinitely:
Running 'Start-VSServicingOperation' for visualstudio2017-workload-vctools with silentArgs:'modify --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools" --includeRecommended --norestart --quiet --add Microsoft.VisualStudio.Workload.VCTools', file:'C:\Program
Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe', logFilePath:', operationTexts:'installed installing installation', assumeNewVS2017Installer:'True'
[20211103 08:47:56.653] Looking for still running VS installer processes
Did not find any running VS installer processes.
[20211103 08:47:56.688] Looking for vs_installer.windows.exe processes spawned by the uninstaller
Did not find any running vs_installer.windows.exe processes.

Running 'Start-VSChocolateyProcessAsAdmin' with exeToRun:'C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe', statements:'modify --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools" --includeRecommended --norestart --quiet --add Microsoft.VisualStudio.Workload.VCTools', minimized:False, noSleep:False, validExitCodes:'0 3010 -2147185721 -2147205120 -2147172352'
Elevating Permissions and running ["C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installer.exe" modify --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools" --includeRecommended --norestart --quiet --add Microsoft.VisualStudio.Workload.VCTools]. This may take a while, depending on the statements.
Setting RunAs for elevation

The culprit appears to be at this line.
The odd thing is that if I run that container with docker run and install it manually it works fine, it only gets stuck when installed with docker build like it is waiting for something.
This issue does not happen at all on windows server 2019-based images.

The line you point to is simply calling the actual the VS installation program.
The official VS 2017 system requirements page does not list Server 2022 as supported, so we may be in uncharted territory there. (Although it does work on Server 2019, even though this version is also not listed.)
I suggest you examine the numerous log files the VS installer generates in $Env:TEMP\chocolatey (named dd_*.log). There you will be able to see what the installer was doing and there may be some clues as to what it may be waiting for.

Closing due to inactivity.


 Otherwise I could just answer “Yes it does” (because it does for me).
What are you doing? What is (or isn’t) happening? Why do you think it doesn’t work?

I am trying to keep my computer display stay on using this Alfred workflow.
when I turn it on using Alfred it doesn't work the monitor still turns off after few minutes.
but If I use an app like amphetamine they work but I do not want to use an extra app.

This is explained in the README (emphasis added):

Type coffee to turn it on. Action it with ⌥ to also prevent display from going to sleep.

thanks alot it is now working by pressing the option key with it.


ISSUE-417: Provide specs for exercises

Wrote typespecs for most of the exercises, mentioned in #417 .
Hope now it'll be easier for students to understand how they need to implement their solutions.
I tried to make typespecs as consistent as possible, yet there might be some exceptions, where I struggled to write simple and concise spec.
Feel free to highlight my flaws or advice a better approach.

If it is OK, I'd better close this PR and open two separate PRs for two exercises I thing require clarification the most.

I have clarified the instructions in the linked issue. Thanks for your efforts anyway!


README Compatibility Lib samples are out of date.

CompatabilityChecker does not seem to have methods get_self_compatibility or get_compatibility.

Sorry that the REAME is out of date. I will look into updating them.
For now, you can query a package or pair of packages directly with http://<IP_ADDRESS>/?package=<PACKAGE1>&package=<PACKAGE2>&python-version=<VERSION>.

Thank you for the quick response @ylil93!


Create weather app

Is your feature request related to a problem? Please describe.
Create a weather app using JavaScript
Describe the solution you'd like
https://youtu.be/MIYQR-Ybrn4?si=LGOjeC88vYUHFOQi

i will do this :)


ERROR - First backward processing was unsuccessful, check MAJA installation

I ran start_maja.py for a while and it seems like the first date seems to be processed successfully (I got the processed TIFs for the first date), but then I got an error before starting on the second image: 2019-05-09 18:46:11,809 - Start-Maja - ERROR - First backward processing was unsuccessful, check MAJA installation .
When I check the log in the ouput directory I did find a GDAL error occuring several times at the end of the file, but I am not sure if this is the cause of the exit:
2019-05-10T09:18:51.621064 ip-172-31-2-35 maja-processing-3.2.2 3.2 [000000024200] [D]  => Caching with file name vns_caching_TOAReader5.tif run in 2.8 minutes.  [vnsSentinel2L1ImageFileReaderBase.txx:GenerateTOACaching:490]
2019-05-10T09:18:51.723171 ip-172-31-2-35 maja-processing-3.2.2 3.2 [000000024200] [D] Caching the </home/ubuntu/efs/Start-MAJA/tmp/site_name/T33VWC/GIPP_001/in/S2B_MSIL1C_20181024T102059_N0206_R065_T33VWC_20181024T160131.SAFE/GRANULE/L1C_T33VWC_A008528_20181024T102428/IMG_DATA/T33VWC_20181024T102059_B05.jp2> image filename...  [vnsSentinel2L1ImageFileReaderBase.txx:GenerateTOACaching:477]
2019-05-10T09:18:51.723212 ip-172-31-2-35 maja-processing-3.2.2 3.2 [000000024200] [D] Reflectance quantification value : 0.0001  [vnsSentinel2L1ImageFileReaderBase.txx:GenerateTOACaching:478]
2019-05-10T09:18:51.766922 ip-172-31-2-35 maja-processing-3.2.2 3.2 [000000024200] [D] GDAL Error 1 : /home/ubuntu/efs/Start-MAJA/tmp/site/T33VWC/GIPP_001/in/S2B_MSIL1C_20181024T102059_N0206_R065_T33VWC_20181024T160131.SAFE/GRANULE/L1C_T33VWC_A008528_20181024T102428/IMG_DATA/T33VWC_20181024T102059_B05.jp2:Not a TIFF or MDI file, bad magic number 0 (0x0)  [vnsGDALLogInit.cxx:CPLIPFErrorHandler:59]
2019-05-10T09:18:51.797647 ip-172-31-2-35 maja-processing-3.2.2 3.2 [000000024200] [D] vnsCachingMacro Proceed caching... with file name vns_caching_TOAReader6.tif (ModeStreamDivisions=5; NumberOfStreamDivisions=800).  [vnsSentinel2L1ImageFileReaderBase.txx:GenerateTOACaching:490]

I have also tried looking into the code of start_maja.py and it seems that at some point no files are found for nomL2init_Natif and nomL2init_MUSCATE line 396-402), resulting in L2type to be set to None which does result in an error later (line 491-495) (I don't see any other place where L2type is defined in between).
        nomL2init_Natif = glob.glob("%s/%s" % (repL2, nomL2_par_dateImg_Natif[d]))
        nomL2init_MUSCATE = glob.glob("%s/%s" % (repL2, nomL2_par_dateImg_MUSCATE[d]))
        if len(nomL2init_Natif) > 0:
            derniereDate = d
            L2type = "Natif"

        elif len(nomL2init_MUSCATE) > 0:
            L2type = "MUSCATE"
            derniereDate = d

So then I tried to find out which folders it is searching in the above code and which folders are available and I found it is searching for:
'../site_name/T33VWC/GIPP_001//S2?_OPER_SSC_L2VALD_T33VWC____20180601.DBL.DIR' (Natif)
and ../site_name/T33VWC/GIPP_001//SENTINEL2?_20180601-*_TT33VWC_C_V*(MUSCATE) while only SENTINEL2A_20180601-102024-463_L2A_T33VWC_C_V1-0  was in this folder (I don't get where the second T in TT33VWC instead of T33VWC is coming from.
What do you think is the best approaching to debugging this issue?
I know this is all very complicated and explained poorly, but I hope there is a simple solution for all this. If you need any more information on my setup please ask!

Hi,
my start MAJA is a little mess, that's not your fault, I am not a professional coder.
The GDAL error is not an error. That's something else
Could you please provide the last lines of the MAJA processing logfile ?
The command line could be useful, as well as the context (linux system...) ?
Did you try the command line without T in the tile number ?
Thanks,
Olivier

Hi, I have updated start-maja to remove the T in the tile name, in case it is provided.
I think it is the reason why it did not work.
My test is still on going, so I am not sure it solves the issue
Olivier

And you should consider working with MAJA 3.3 which was just released and improves a lot (particularly because a parameter issue we just found, see the plots at the end)
http://www.cesbio.ups-tlse.fr/multitemp/?p=15666

Hi Olivier,
Thanks for the fast response! I uploaded the log file (I hope it is the right one).
S2A_MSIL1C_20180601T102021_N0206_R065_T33VWC_20180601T123308.SAFE.log
I am working on an Ubuntu 18.04.2 LTS server running the code in a tmux 2.6 terminal.
Maybe also useful information, these are all the files copied to my /tmp/in folder:
GIPP_S2_MAJA_3.3_TM                                                S2A_TEST_GIP_L2DIRT_L_SEASALT__50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_CONTINEN_10002_20150703_21000101.DBL.DIR
S2A_MSIL1C_20180601T102021_N0206_R065_T33VWC_20180601T123308.SAFE  S2A_TEST_GIP_L2DIRT_L_SEASALT__50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIFT_L_CONTINEN_10002_20150703_21000101.HDR
S2A_MSIL1C_20180721T102021_N0206_R065_T33VWC_20180721T123132.SAFE  S2A_TEST_GIP_L2DIRT_L_SULPHATE_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_DUST_____50001_00000000_99999999.DBL.DIR
S2A_MSIL1C_20180919T102021_N0206_R065_T33VWC_20180919T123234.SAFE  S2A_TEST_GIP_L2DIRT_L_SULPHATE_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIFT_L_DUST_____50001_00000000_99999999.HDR
S2A_MSIL1C_20181016T101021_N0206_R022_T33VWC_20181016T121930.SAFE  S2A_TEST_GIP_L2SMAC_L_ALLSITES_10005_20150703_21000101.EEF         S2B_TEST_GIP_L2DIFT_L_ORGANICM_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_CKEXTL_S_31TJF____10001_20150703_21000101.EEF         S2A_TEST_GIP_L2TOCR_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_ORGANICM_50001_00000000_99999999.HDR
S2A_TEST_GIP_CKQLTL_S_31TJF____10005_20150703_21000101.EEF         S2A_TEST_GIP_L2TOCR_L_BLACKCAR_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIFT_L_SEASALT__50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2A_TEST_GIP_L2TOCR_L_CONTINEN_10005_20150703_21000101.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_SEASALT__50001_00000000_99999999.HDR
S2A_TEST_GIP_L2ALBD_L_BLACKCAR_50001_00000000_99999999.HDR         S2A_TEST_GIP_L2TOCR_L_CONTINEN_10005_20150703_21000101.HDR         S2B_TEST_GIP_L2DIFT_L_SULPHATE_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_CONTINEN_10005_20150703_21000101.DBL.DIR     S2A_TEST_GIP_L2TOCR_L_DUST_____50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_SULPHATE_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2ALBD_L_CONTINEN_10005_20150703_21000101.HDR         S2A_TEST_GIP_L2TOCR_L_DUST_____50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIRT_L_BLACKCAR_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_DUST_____50001_00000000_99999999.DBL.DIR     S2A_TEST_GIP_L2TOCR_L_ORGANICM_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIRT_L_BLACKCAR_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2ALBD_L_DUST_____50001_00000000_99999999.HDR         S2A_TEST_GIP_L2TOCR_L_ORGANICM_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIRT_L_CONTINEN_10002_20150703_21000101.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_ORGANICM_50001_00000000_99999999.DBL.DIR     S2A_TEST_GIP_L2TOCR_L_SEASALT__50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIRT_L_CONTINEN_10002_20150703_21000101.HDR
S2A_TEST_GIP_L2ALBD_L_ORGANICM_50001_00000000_99999999.HDR         S2A_TEST_GIP_L2TOCR_L_SEASALT__50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIRT_L_DUST_____50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_SEASALT__50001_00000000_99999999.DBL.DIR     S2A_TEST_GIP_L2TOCR_L_SULPHATE_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIRT_L_DUST_____50001_00000000_99999999.HDR
S2A_TEST_GIP_L2ALBD_L_SEASALT__50001_00000000_99999999.HDR         S2A_TEST_GIP_L2TOCR_L_SULPHATE_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIRT_L_ORGANICM_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2ALBD_L_SULPHATE_50001_00000000_99999999.DBL.DIR     S2A_TEST_GIP_L2WATV_L_CONTINEN_10006_20150703_21000101.DBL.DIR     S2B_TEST_GIP_L2DIRT_L_ORGANICM_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2ALBD_L_SULPHATE_50001_00000000_99999999.HDR         S2A_TEST_GIP_L2WATV_L_CONTINEN_10006_20150703_21000101.HDR         S2B_TEST_GIP_L2DIRT_L_SEASALT__50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2COMM_L_ALLSITES_10009_20150703_21000101.EEF         S2B_MSIL1C_20180822T101019_N0206_R022_T33VWC_20180822T142412.SAFE  S2B_TEST_GIP_L2DIRT_L_SEASALT__50001_00000000_99999999.HDR
S2A_TEST_GIP_L2COMM_L_ALLSITES_99999_20150703_21000101.EEF         S2B_MSIL1C_20180924T102019_N0206_R065_T33VWC_20180924T160501.SAFE  S2B_TEST_GIP_L2DIRT_L_SULPHATE_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2B_MSIL1C_20181014T102019_N0206_R065_T33VWC_20181014T140123.SAFE  S2B_TEST_GIP_L2DIRT_L_SULPHATE_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIFT_L_BLACKCAR_50001_00000000_99999999.HDR         S2B_MSIL1C_20181024T102059_N0206_R065_T33VWC_20181024T160131.SAFE  S2B_TEST_GIP_L2SMAC_L_ALLSITES_10005_20150703_21000101.EEF
S2A_TEST_GIP_L2DIFT_L_CONTINEN_10005_20150703_21000101.DBL.DIR     S2B_TEST_GIP_CKEXTL_S_31TJF____10001_20150703_21000101.EEF         S2B_TEST_GIP_L2TOCR_L_BLACKCAR_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_CONTINEN_10005_20150703_21000101.HDR         S2B_TEST_GIP_CKQLTL_S_31TJF____10005_20150703_21000101.EEF         S2B_TEST_GIP_L2TOCR_L_BLACKCAR_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIFT_L_DUST_____50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2TOCR_L_CONTINEN_10002_20150703_21000101.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_DUST_____50001_00000000_99999999.HDR         S2B_TEST_GIP_L2ALBD_L_BLACKCAR_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2TOCR_L_CONTINEN_10002_20150703_21000101.HDR
S2A_TEST_GIP_L2DIFT_L_ORGANICM_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_CONTINEN_10003_20150703_21000101.DBL.DIR     S2B_TEST_GIP_L2TOCR_L_DUST_____50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_ORGANICM_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2ALBD_L_CONTINEN_10003_20150703_21000101.HDR         S2B_TEST_GIP_L2TOCR_L_DUST_____50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIFT_L_SEASALT__50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_DUST_____50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2TOCR_L_ORGANICM_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_SEASALT__50001_00000000_99999999.HDR         S2B_TEST_GIP_L2ALBD_L_DUST_____50001_00000000_99999999.HDR         S2B_TEST_GIP_L2TOCR_L_ORGANICM_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIFT_L_SULPHATE_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_ORGANICM_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2TOCR_L_SEASALT__50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIFT_L_SULPHATE_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2ALBD_L_ORGANICM_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2TOCR_L_SEASALT__50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIRT_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_SEASALT__50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2TOCR_L_SULPHATE_50001_00000000_99999999.DBL.DIR
S2A_TEST_GIP_L2DIRT_L_BLACKCAR_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2ALBD_L_SEASALT__50001_00000000_99999999.HDR         S2B_TEST_GIP_L2TOCR_L_SULPHATE_50001_00000000_99999999.HDR
S2A_TEST_GIP_L2DIRT_L_CONTINEN_10005_20150703_21000101.DBL.DIR     S2B_TEST_GIP_L2ALBD_L_SULPHATE_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2WATV_L_CONTINEN_10006_20150703_21000101.DBL.DIR
S2A_TEST_GIP_L2DIRT_L_CONTINEN_10005_20150703_21000101.HDR         S2B_TEST_GIP_L2ALBD_L_SULPHATE_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2WATV_L_CONTINEN_10006_20150703_21000101.HDR
S2A_TEST_GIP_L2DIRT_L_DUST_____50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2COMM_L_ALLSITES_10009_20150703_21000101.EEF         S2__TEST_AUX_REFDE2_T33VWC_0001.DBL.DIR
S2A_TEST_GIP_L2DIRT_L_DUST_____50001_00000000_99999999.HDR         S2B_TEST_GIP_L2COMM_L_ALLSITES_99999_20150703_21000101.EEF         S2__TEST_AUX_REFDE2_T33VWC_0001.HDR
S2A_TEST_GIP_L2DIRT_L_ORGANICM_50001_00000000_99999999.DBL.DIR     S2B_TEST_GIP_L2DIFT_L_BLACKCAR_50001_00000000_99999999.DBL.DIR     S2__TEST_GIP_L2SITE_S_31TJF____10001_00000000_99999999.EEF
S2A_TEST_GIP_L2DIRT_L_ORGANICM_50001_00000000_99999999.HDR         S2B_TEST_GIP_L2DIFT_L_BLACKCAR_50001_00000000_99999999.HDR

The output files I got are in this output folder:
/home/ubuntu/efs/data/project/site_name/T33VWC/GIPP_001/ for example SENTINEL2A_20180601-102024-463_L2A_T33VWC_C_V1-0/SENTINEL2A_20180601-102024-463_L2A_T33VWC_C_V1-0_SRE_B2.tif.
My start_maja.py command was as follows:
python2 ./start_maja.py -f folders.txt -g GIPP_001 -l LUT_MAJA_3_TM_CAMS -t T33VWC -s site_name -d 20180601 -e 20181101

I couldn't find the LUT folder without CAMS, so that is why I am using LUT_MAJA_3_TM_CAMS. I am still trying to download the CAMS data.

Thanks a lot I am going to try and will let you know if it works!

I inserted the parameters without CAMS yesterday:
http://tully.ups-tlse.fr/olivier/gipp_maja/tree/master/GIPP_S2_MAJA_3.3_TM
Regarding the log file, I  am noy fully sure the tile number is the explanation, but still, start_maja was not working with a tile number starting with T. Now it is, at least in my test.

It works now! So I guess it was because I added a "T" to the tile number (didn't realize that T wasn't part of the tile number).
I was just wondering if the resulting product already takes solar irradiance into account or if we should still normalize for this.

Good news !
We provide surface reflectances, which are independent and corrected from solar irradiance. The only thing which is not corrected are the directional effects. We do not normalise to nadir viewing direction, and keep the observation sun angles.
Remember, you should swap to V3.3 if not done yet.
I am closing the issue, but you may reopen it or a new one if needed.

Okay, good to know!
For some reason some images are still a lot brighter than others, I thought this would be more normalized over-time in this process. I haven't used the CAMS data yet though, maybe this would help fix this issue.
I did swap to V3.3 already.

Hi David,
That's strange, we usually do not observe that. Some images may be slightly brighter but usually not a lot brighter. Did  you compare the surface reflectance values ? Or just looked at the images ? Did you set a constant min and max reflectance values before displaying the images ? Sometimes, the automatic display adapts its min and max values to the image content, which makes time series inconsistent.
That's a common error among beginner users (but maybe are you an expert one).
If my guess of the cause of what you observe is wrong, I am interested to have the dates of the images you used.
best regards,
Olvier

Hi Olivier,
Thanks for your response. I am not an expert, but I did clip the images at the same maximum and minimum value and I performed min-max normalization using the same min and max values for each image. So I think something else must be going wrong. I am now running the code using the CAMS data, so hopefully, this will result in more equal images over time.
I ran the code on the following images:
S2A_MSIL1C_20180601T102021_N0206_R065_T33VWC_20180601T123308.SAFE
S2A_MSIL1C_20180721T102021_N0206_R065_T33VWC_20180721T123132.SAFE
S2A_MSIL1C_20180919T102021_N0206_R065_T33VWC_20180919T123234.SAFE
S2A_MSIL1C_20181016T101021_N0206_R022_T33VWC_20181016T121930.SAFE
S2B_MSIL1C_20180507T102019_N0206_R065_T33VWC_20180507T123037.SAFE
S2B_MSIL1C_20180822T101019_N0206_R022_T33VWC_20180822T142412.SAFE
S2B_MSIL1C_20180924T102019_N0206_R065_T33VWC_20180924T160501.SAFE
S2B_MSIL1C_20181014T102019_N0206_R065_T33VWC_20181014T140123.SAFE
S2B_MSIL1C_20181024T102059_N0206_R065_T33VWC_20181024T160131.SAFE

Where it turned out 2018-09-19 and 2018-08-22 where very dark (and also quite cloudy), 2018-07-21 is very bright and 2018-10-16 has some blue artifacts (due to clouds probably). The other images do seem to be normalized nicely.

Also when dividing the images by 10,000 the maximum value I saw was around 1.6, I guess the values are supposed to be within 0 and 1?

Hi, that's interesting...
I doubt the use of CAMS can solve that, usually the aerosol amount in your regions is low, and CAMS just brings more accuracy on the aerosol type which has little influence if the aerosol content is low.
I am going to process these images on my side in order to check, ecuase I have never seen such variations. I have started the processing with all dates between May and October. I'll have the results tomorrow morning. I'll try to analyse that before the end of the week.
Reflectance values can be greater than 1, it is  the albedo which cannot be greater than 1 (the albedo if the integration of reflectance on the half space). For instance, a mirror that reflects the sun towards the satellite can have a reflectance of 1000. Or a  slope in a cloud surface facing the sun can also reach 1.3 - 1.5. 2 is a lot, except in the case of a mirror (roof top  ass, green house, car glasses...)
I'll let you know about my results.
Olivier

Hi,
I have had a look at the images I generated using Start_MAJA with version 3.3 without CAMS, and I see nothing wrong. Here is a little animation, at a low resolution because of the size of data. But you will see that everything is quite consistent. I have overlayed the contours of cloud mask (green) shadows mask (yellow), water mask (blue). You can see that the image of 20180822, the last one is correct, and surface has reflectances close to those of the other dates. Same for 20180721.
The island (or peninsula) in the east becomes slowly brighter but I guess it is because of summer.
My quicklooks use, for all dates:
min=0
max=2500 (or 0.25 if you convert to reflectance floats first).

So it still looks as if there was an issue in your quicklook generation.
Just a question though, did you download all the date, or only the ones you quoted in your email. MAJA works better if all the dates are provided.
Best regards,
Olivier

Hi Olivier,
Thanks very much for uploading this, this will be very helpful for debugging. I did not download all the dates, just the dates I mentioned (I tried filtering out dates with too many clouds and dates that were very close to each other), but I will try downloading all the dates in the period now. I think I might have used the CAMS parameters while not using CAMS data, maybe this could have resulted in some problems?

It seems to be working now! I think it was an issue with using the wrong parameters.

Good news, thanks !
Olivier


unable to find zcu102 firmware

surender@xhdsurender41:/scratch/KRS/krs_ws$ git clone --recursive https://github.com/ros-acceleration/acceleration_firmware_zcu102 src/acceleration/acceleration_firmware_zcu102
Cloning into 'src/acceleration/acceleration_firmware_zcu102'...
remote: Enumerating objects: 34, done.
remote: Counting objects: 100% (34/34), done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 34 (delta 7), reused 32 (delta 5), pack-reused 0
Unpacking objects: 100% (34/34), 19.43 KiB | 1.94 MiB/s, done.
surender@xhdsurender41:/scratch/KRS/krs_ws$ colcon build --merge-install
Starting >>> ament_vitis
Starting >>> acceleration_firmware
Starting >>> colcon-acceleration
Starting >>> publisher_xilinx
Starting >>> ros2acceleration
Finished <<< colcon-acceleration [0.38s]
Finished <<< acceleration_firmware [0.47s]
Starting >>> acceleration_firmware_kv260
Finished <<< ament_vitis [0.49s]
Starting >>> accelerated_doublevadd_publisher
Starting >>> doublevadd_publisher
Starting >>> faster_doublevadd_publisher
Starting >>> offloaded_doublevadd_publisher
Starting >>> simple_adder
Starting >>> triplevadd_publisher
Starting >>> vadd_publisher
Finished <<< publisher_xilinx [0.64s]
Finished <<< ros2acceleration [0.71s]
Finished <<< accelerated_doublevadd_publisher [0.84s]
Finished <<< doublevadd_publisher [0.83s]
Finished <<< faster_doublevadd_publisher [0.82s]
Finished <<< acceleration_firmware_kv260 [0.85s]
Finished <<< simple_adder [0.81s]
Finished <<< triplevadd_publisher [0.80s]
Finished <<< offloaded_doublevadd_publisher [0.81s]
Finished <<< vadd_publisher [0.79s]

Summary: 13 packages finished [1.53s]
surender@xhdsurender41:/scratch/KRS/krs_ws$ colcon acceleration select zcu102
'zcu102' not found among firmware deployed. Try: ['kv260']
surender@xhdsurender41:/scratch/KRS/krs_ws$

This is not the way it should be done @surender009, refer to the instructions:
###################################################
# 2. create a new ROS 2 workspace
###################################################
mkdir -p ~/krs_ws/src; cd ~/krs_ws

###################################################
# 3. Create file with KRS alpha release
# TODO: this file should be fetched with wget once
#       KRS repository is publicly available
###################################################
cat << 'EOF' > krs.repos
repositories:
  acceleration/acceleration_firmware:
    type: git
    url: https://github.com/ros-acceleration/acceleration_firmware
    version: main
  acceleration/acceleration_firmware_kv260:
    type: zip
    url: https://github.com/ros-acceleration/acceleration_firmware_kv260/releases/download/v0.6.0/acceleration_firmware_kv260.zip
  acceleration/colcon-acceleration:
    type: git
    url: https://github.com/ros-acceleration/colcon-acceleration
    version: main
  acceleration/ros2acceleration:
    type: git
    url: https://github.com/ros-acceleration/ros2acceleration
    version: main
  acceleration/ament_vitis:
    type: git
    url: https://github.com/ros-acceleration/ament_vitis
    version: main
EOF

###################################################
# 4. import repos of KRS alpha release
###################################################
vcs import src --recursive < krs.repos  # about 5 mins

Also, see README NOTE :

NOTE: This repository is has various GB of data. Due to GitHub size restrictions, the whole source code is available under releases. Refer to each corresponding's release firmware/ARTIFACTS.md file for a description of all the artifacts included.

Closing in here. Refer to the actual instructions and follow them please.


Mac build is still Intel only, when Apple Silicon ARM64 so M1 M1X M2 M2X support is coming?

For I/O intensive apps the speed improvements Apple Silicon architecture brings are very nice, when an Universal build will be released?
Or maybe in the meantime an Apple Silicon beta build while we wait for the Mac version to be Universal?
Thanks Boris !!!!!!!!!!!!

I hope to get access to M1 Mac in the coming months - to be able to build an M1 build in addition to a regular Mac build 🤞
Thanks for letting me know about "Universal build" - I'll read up about it. As far as I can tell, I could just release two versions of the app (Intel and M1) and that would solve the problem. The "Universal" is some method of creating a single installation file that handles both? If so, it would depend on Electron (& Electron Builder) handling it somehow 🤷 - until then I think 2 separate installation would address this issue, right?

Universal builds are handy for distribution and for people not sure on which cpu have on their mac and to make things easier but a single build is ofc bigger in size, having to contain more than one version inside, but Apple is doing a good job trying to optimize this with shared resources and such between the included versions in a single Universal package.
BTW Yeah 2 binaries would be totally ok, the speed improvements on Apple Silicon architecture are HUGE (shared memory bandwidth and lower latency along with low power consumption and low heat) and optimized further day by day and I'm so curious to see how VHA3 will FLY on Apple Silicon!

Hey Boris! Any news on this? When do you plan to release a new version with native Apple Silicon Support? Thanks!!!!!

Hey @dia3olik - sorry it's been such a busy year (I'm still finishing up the pro-bono work I'm doing with utilitiarianism.net 😅) - and still haven't finished installing the kitchen in the house my wife and I bought and moved into 1.5 years ago 😓 - so much to do, so little time.
I am aiming to release the patch/bugfix release of VHA by March 2023 - whenever the next release happens is when I'll be adding the M1 version. As of now the app works just fine on an M1 Mac (I tested) 👌 -- but the dedicated M1 build should be better still 😊
🤞 hoping to have things done by March 2023 - thank you for your patience 🙇

FYI: just created the v3.2.0 release on M3, works.
This can be closed.


Issue Currently, logged-in users are incorrectly shown a signup notification when accessing certain routes, such as /events and /shop, on the website.

<!---
fix: Correct signup notification for logged-in users

Currently, logged-in users are incorrectly shown a signup notification
when accessing certain routes, such as /events and /shop, on the website.

To address this issue, this commit modifies the relevant components to
utilize local storage for accessing the isLoggedIn status. Now, when a
user is already logged in, the notification displayed on these routes
appropriately reflects their authenticated status.

### 👷🏻 Changes made
Changes Made:
- Updated relevant components to check the isLoggedIn status from local
  storage and adjust the notification accordingly.
- Added conditional rendering logic to show different notifications based
  on the user's authentication status.
- Updated tests to ensure the correct behavior of the modified components.

### 📸 Screenshots
![already logged in user](https://github.com/milancommunity/Milan/assets/111192743/6ba88066-b605-4603-8454-7b52c5181ffa)
![isloading error](https://github.com/milancommunity/Milan/assets/111192743/fbe996a3-46cc-4483-a3ec-b30dd9b35f91)
![showing signup to get notified still](https://github.com/milancommunity/Milan/assets/111192743/ed85c2b5-d118-483f-8ea7-67c8beb877b2)
![you will be notified](https://github.com/milancommunity/Milan/assets/111192743/b64b871c-7a9e-4cd0-ad1c-30982e37dc2e)

Hey there, thank you so much for contributing to Milan, Here are a couple of things that I think are to be done

Please use an issue template (bug) and make a new issue with all the details properly listed for better understanding of everyone else,  I AM CLOSING THIS ONE.
Once you have made the issue and we have talked about it, only then make a PR.
Also use PROPER PR TITLES, to learn more go here


Some suggestions

I made some suggestions, feel free to take any or none :)

Add the ProductCategory Enum
Rename Staff to Employee
Make the relation between Sale and Product m:n
Add completed boolean to Duty

cc @antonandoff

Thanks @2color !


Fix #10142. LiveDev2: Firefox highlight does not have fade-away effect.

Fixes #10142.
Wait a little longer for the highlight element to take it's initial state. If
the element is not yet in its initial state, the transition does not happen. It
seems like on Firefox/Gecko it takes longer than on Chrome/Webkit.
This is a quote from MDN article on subject:

Care should also be taken when using a transition immediately after adding the element to the DOM using .appendChild() or removing its display: none; property. This is seen as if the initial state had never occurred and the element was always in its final state. The easy way to overcome this limitation is to apply a window.setTimeout() of a handful of milliseconds before changing the CSS property you intend to transition to.

CC: @dangoor, @redmunds

Much better! Thanks. Merging.


Difference test failure

Getting the following error while running the test suite.
 FAIL  test/display.test.js
  ● Difference › diff -> in seconds, days, weeks, months, quarters, years

    expect(received).toBe(expected) // Object.is equality

    Expected value to be:
      -86403600
    Received:
      -86400000

      131 |     const units = ['seconds', 'days', 'weeks', 'months', 'quarters', 'years']
      132 |     units.forEach((unit) => {
    > 133 |       expect(dayjsA.diff(dayjsB, unit)).toBe(momentA.diff(momentB, unit))
      134 |       expect(dayjsA.diff(dayjsB, unit, true)).toBe(momentA.diff(momentB, unit, true))
      135 |       expect(dayjsA.diff(dayjsC, unit)).toBe(momentA.diff(momentC, unit))
      136 |       expect(dayjsA.diff(dayjsC, unit, true)).toBe(momentA.diff(momentC, unit, true))

      at test/display.test.js:133:41
          at Array.forEach (<anonymous>)
      at Object.<anonymous> (test/display.test.js:132:11)

Can not reproduce on my computer or our CI environment.
Any further detail you can supply? Timezone, Daylight Saving Time, ...

± |master ✓| → node -v
v8.11.1

± |master ✓| → npm -v
5.6.0

± |master ✓| → yarn -v
1.6.0

Currently in the Eastern timezone USA.  Not sure what the cause is, but it looks like my PR passed the tests still, so it must just be a local environment issue. ¯_(ツ)_/¯

Allright.
I'll close this issue. If you still have a problem, feel free to re-open it :)


Fix Children.toArray when passed undefined

There are cases when this.props.chidren is undefined and toArray was returning an array containing undefined instead of an empty array.

This PR shouldn't be necessary if we fix the issue in #319.

Good catch. I think we might need to do an explicit check there so this doesn't also drop 0 and false children values.

Done!  Let me know if there is anything else.

I might inline this into the ternary, but TBH uglify will do that for us anyway.


How I may to do what CTI-Toolbox works?

HI,
I've cloned this git repositoty. I've created the file "iprep_conf.py" as README says but I don't know to work wiht CTI-Toolbox...do you have any idea about this, please?
Thanks

I have uploaded an iprep_conf.py.CHANGEME file, it gives an overview on the configuration.
Then you need to add the api keys for the different sources,
example:
xfexchange -> IBM XForce Exchange
otx.py -> Alienvault OTX
and so on
other tools work without an API key, like indifetch.py
sys.path.append("./")
import indifetch
Text = "<IP_ADDRESS> is an IP address"
print indifetch.getIP(Text)

Hi Johestephan,
If I've understaned you fine, have I to run each scrpt?
Yo can see a sample, such as:
root@CS-01:/opt/CTI-Toolbox# python xfexchange.py -i <IP_ADDRESS>
Traceback (most recent call last):
File "xfexchange.py", line 310, in
print getip(options.ip)
File "xfexchange.py", line 105, in getip
return [str(data2), "Ups", "Ups", "ups"]
UnboundLocalError: local variable 'data2' referenced before assignment
Anyway I run vt.py or otx.py and these aren't working properly, when I run the script I don't give response as if the script not works...it seems odd
Thx!

Well,
have you obtained the API keys from Xforce?

Yes, I've obtained the API Keys and I've configured the file iprep_conf.py as you said me before. I run anything script and thes scripts aren't working.

Send me a message to my email address (johe.stephan AT gmail.com) with your config, I will verify. For me it is working all day. <it is even in production as the backend of a portal and used by several people a day.


Erroneous Powershell commands

Everything int he article after "Create the application identity for your logic app in PowerShell" is erroneous.
It is using deprecated/obsolete powershell commands. Please update with the new commands.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 2d454925-bb49-5db4-355c-e6f3475eb3e6
Version Independent ID: 4bdf6bd3-13eb-b38b-7d93-f854780ee4e3
Content: Add authentication to custom APIs - Azure Logic Apps
Content Source: articles/logic-apps/logic-apps-custom-api-authentication.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

@SharePointing Thanks for your feedback! We will review and update this doc accordingly.

@SharePointing Thanks for contributing to MS Docs! We have update the doc accordingly.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Table writer 10: Support partition writes in TableWriter

When the table is partitioned, create multiple dwrf writers
by HiveDataSink, one for each distinct partition value.
Call PartitionIdGenerator to generate consecutive IDs
for distinct partition values, which are used for the index
of the dwrf writer vector. Each input could see new partition
values, so dwrf writers are created incrementally.
To assemble the input for different dwrf writers, we compute
the index into the original input for every partition value
and wrap the original input into a DictionaryVector.
The DictionaryVector is sent to the corresponding dwrf writer
as writer input. In the frequent case of the input belonging
to the same partition, no input wrap happens and we directly
send the input vector to the dwrf writer.

Not ready for review yet. Will do more revising.

@mbasmanova Hi Masha, I revised this PR based on our discussion that utilizes the ID generator based on only a single VectorHasher. Also addressed the prior comments that are applied to the revision. Would you be able to help take a look again?

Hi @mbasmanova , the PR is updated and ready for review. I borrowed the example piece of code you put together for me, w/ minor adjustment, and found that ensurePartitionWriters() helps largely simplify the code logic flow.

@gggrace14 Ge, there is a CircleCI failure which seems to be due to changes in this PR. Would you take a look?

@gggrace14 Ge, there is a CircleCI failure which seems to be due to changes in this PR. Would you take a look?

Hi @mbasmanova Masha, I fixed the CircleCI failure. Also added a TableWriteTest case to test the limit on partition # end to end :)

Hi @mbasmanova , I have addressed the recent comments and uploaded a new revision. Ready for review. Would you be able to help take a look again?


Fix system test timeouts in GitHub CI

Data races due to incorrect sharing of AK server output
Previous systest additions in the CLI are no longer unnecessary
Indirect result: can read address from output, no need for file
"ak up" command didn't terminate when the test was done

As noted in the PR description, I verified there are no data races and no goroutines leaks, however GitHub is still timing out, for example:
https://github.com/autokitteh/autokitteh/actions/runs/7947213372/job/21695775874?pr=1
...
2024-02-18T06:42:34.1096113Z ?   	go.autokitteh.dev/autokitteh/sdk/sdkrun	[no test files]
2024-02-18T06:42:34.1097233Z ?   	go.autokitteh.dev/autokitteh/sdk/sdkruntimes	[no test files]
2024-02-18T06:42:34.1098346Z ?   	go.autokitteh.dev/autokitteh/sdk/sdkruntimessvc	[no test files]
2024-02-18T06:42:34.1107623Z ?   	go.autokitteh.dev/autokitteh/sdk/sdkservices	[no test files]
2024-02-18T06:42:34.1263589Z ok  	go.autokitteh.dev/autokitteh/sdk/sdkmodule	0.013s
2024-02-18T06:42:35.7533921Z ok  	go.autokitteh.dev/autokitteh/sdk/sdktypes	0.017s
2024-02-18T06:42:35.7547808Z ok  	go.autokitteh.dev/autokitteh/sdk/sdkvalues	0.017s
2024-02-18T06:42:36.6114043Z ?   	go.autokitteh.dev/autokitteh/web/github/connect	[no test files]
2024-02-18T06:42:36.6114983Z ?   	go.autokitteh.dev/autokitteh/web/integrations	[no test files]
2024-02-18T06:42:36.6115811Z ?   	go.autokitteh.dev/autokitteh/web/static	[no test files]

(worker idle for ~5 minutes before I canceled the job)

2024-02-18T06:48:34.0057655Z ##[error]The operation was canceled.
...

Issue reference: ENG-427


Images not changing on refresh

So I've got visualCaptcha running with an Ember application.
It's the only captcha on the page, all resources seem to load fine, captcha backend is currently the node demo provided.  I've added some middleware to log the request url on that server, which is captured in the below gif, as well as the components being destroyed and rerendered, but still, the same images persist.
Link to actual gif:
http://cl.ly/0d3W3L0R3m1E
Screenshot:

An interesting note.
As I said, I'm using the demo for the API.  When I go to the demo page, and refresh, it does work correctly.
If I go to my page, refresh, it does not, but if I go to the demo page and have it load a set of images, then return to my page, it will refresh precisely ONCE with new images.

Also do note that I'm experiencing this issue with both the vanilla and jQuery packages.

Thanks for considering visualCaptcha @meteormanaged !
Hmm. This is an interesting issue. It does seem like the session isn't really being recreated, though you are calling the /start endpoint.
I don't honestly think this has to do with anything wrong in the ember implementation, as it is making all the requests properly, and in the gif it's visible the DOM is being updated. The data you're receiving is simply the same.
Have you tried spinning up a simple node or php backend locally to try it out with that?

Playing around with this a bit more.  It appears that visualCaptcha isn't receiving session information from the Node endpoint because I'm not loading the site itself via the same express setup.  The pictures that were being sent were because there was a session cookie from looking at the demo page, which also explains why the sent images would change after refreshing the demo page, but only once.
I hadn't any plans to use node for the front end application I'm building, since it's built and ember and will be fronted by nginx.  Setting the client-sessions option to httpOnly: false doesn't help with the problem.
Any tips?

// Throw an error if no session object is passed
    if ( typeof session !== 'object' || ! session ) {
        throw {
            name: 'visualCaptchaException',
            message: 'Cannot initialize visualCaptcha without a valid session object!'
        };
    }

So it looks like express isn't passing the session back to the API calls, and then when the next call is sent, session is empty.
The above checks for type, and whether it's true, but doesn't check to see if it's a blank object.

Might be prudent to add a check:
Object.keys(session).length > 0

It appears, looking through the source code, that client-sessions does not actually provide any implementation of httpOnly.  Attempting to use expression-session appears to respect the option, but doesn't appear to work with your library.

If you're checking https://demo.visualcaptcha.net, it uses the PHP back-end, not the node one. Does that make sense?

So I worked this out.
Three additions were needed to use your demo node app as an API with the vanilla script.
1 and 2: CORS requires a specific origin to match, as below, as well as Access-Control-Allow-Credentials header, set to true.
     app.use( function( req, res, next ) {         res.header( 'Access-Control-Allow-Origin', 'http://localhost:4200' );         res.header('Access-Control-Allow-Credentials', 'true');        next(); } );

Modification of vanilla.js to set ajaxRequest.withCredentials to true, as below
define( 'visualcaptcha/xhr-request',[],function() {
'use strict';

var XMLHttpRequest = window.XMLHttpRequest;

return function( url, callback ) {
    var ajaxRequest = new XMLHttpRequest();

    ajaxRequest.open( 'GET', url, true );
    ajaxRequest.withCredentials = true;
    ajaxRequest.onreadystatechange = function() {
        var response;

        if ( ajaxRequest.readyState !== 4 || ajaxRequest.status !== 200 ) {
            return;
        }

        response = JSON.parse( ajaxRequest.responseText );
        callback( response );
    };

    ajaxRequest.send();
};

} );

That's great news @meteormanaged ! That seems specific to your own situation, so I'm closing this.
Let me know if there's anything missing here, and feel free to re-open the issue!

@meteormanaged thanks for documenting the fix, had the same problem

np @vladikoff i'll see if i can't find some time to upload a bit more of a finished demo of my node API solution.


[Improvement-3369][api] Introduce users service interface for clear code

What is the purpose of the pull request
Introduce users service interface for clear code
Brief change log

Add UserServiceImpl and change UserService to interface

Verify this pull request
This pull request is already covered by existing tests, such as (please describe tests).

Hi, please resolve the conflict..

close by #4758


question about precision of polygon

there is a column of geometry_type='Polygon', srid=4326.
inserted data is<PHONE_NUMBER>3580786.

shaply.geometry.base.py#  to_wkt method returns<PHONE_NUMBER>358078621
(this is not same as original value)
shaply.geometry.base.py#  wkt property returns<PHONE_NUMBER>358079
(this value is rounded at 15)

How can I get original value correctly?

I'm sorry but this is not an issue for the Shapely tracker. Floating point values can not generally be represented in computers with perfect precision and there is almost always some loss of precision or gain of false precision when serializing them to and from WKT.


Add Balance Type

I have a suspicion that the reverts around liquidity add/remove have to do with not actually tracking balances to the wei.
I've added a Balance type and tried to wire it in, but it doesn't quite work yet. You're doing some math where xSD and USDC balances are multiplied, and I don't really understand what it's supposed to be doing, so I can't fix it to work with this fixed point balance class.

I've added a Balance type and tried to wire it in, but it doesn't quite work yet. You're doing some math where xSD and USDC balances are multiplied, and I don't really understand what it's supposed to be doing, so I can't fix it to work with this fixed point balance class.

Yeah, that math was garbage, i fixed it. It was originally a hold over when before making ganache connections, and kind of ignored it for awhile trying to solve other run-time issues (still a big issue with the coupon auction stuff with gas limits hit during advance (once the conditions are met for settling an auction), ill need to find a better way to handle that/reduce gas costs).
This is good though, I should have originally started with decimal types, but this is a better approach.


no info getting pulled into permalink page as owner or non-owner

items missing from owner:

caption
author name
why participated

items missing from non-owner:

problem
solution (fact OR statement)
caption
author name
secondary call to action

owner on staging:

owner on prod:

non-owner on staging:

non-owner on prod:

this actually isn't broken for me locally (with the latest code and the database from stage)
I think it might be a cache issue --since the results of are stored in a custom cache table.
@sheydari-ds how are custom cache tables dealt with on stage? is it on redis, can I log into a client and look?

@angaither Redis is run via staging. You can use this client here: http://redisdesktop.com/ for browsing. Ping me when you have time and I can help get it set up for you.

Actually the caption/user name/why participated is all there... the text is just white
cc @DFurnes

as far as the non owner stuff
it looks like the majority of content is missing from  dosomething_campaign_load() probably from translation stuffs

the problem fact and solution are also there, they are just showing up as white text

@DFurnes I think the issue is from the most recent forge changes (since that's the last time the file was touched) https://github.com/DoSomething/phoenix/commit/7e15f5fdb5d96165d466cc052816f27eb32ef74d


Donut chart Total

Summary
It would be nice to split the total label in the label/name and this value. The purpose is to use the total value alone without the label/name. The Value should be centered in the middle of donut.
Intended Use Case
Use the total value as Big Numbers without the label. Like:

Hello! I think I may have a simple working solution to this that I will submit a PR for soon, if this issue is still up for grabs. Thanks!

@halfpeeled @junedchhipa First of all thank for the implementation of feature. I have question about documentation of this feature where I have to put the hideLabel:true. As I seen that this feature has been released in 3.54.0.

You have to set the total label as empty string
options = {
  plotOptions: {
    radialBar: {
      dataLabels: {
        total: {
          label: ""
        }
      }
    }
  }
}

Thanks


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from  to before v5.4.129",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=f2c027a7750f2d7a35cd95858163cce9aae4c1aa"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "f2c027a7750f2d7a35cd95858163cce9aae4c1aa",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "cfg80211: call cfg80211_leave_ocb when switching away from OCB\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.4.129 by commit f2c027a7750f2d7a35cd95858163cce9aae4c1aa. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001116


is there a extension  can help  we get the number of times this user has listened to a song，and display the data as one of the columns in 《Liked Songs》

📝 Provide a description of the new feature
is there a extension  can help we get the number of times this user has listened to a song，and display the data as one of the columns in 《Liked Songs》
➕ Additional Information
No response

Issues are for issues or feature requests for marketplace. Ask on discord server


Support for specifying multiple ports for a component

Currently, a component inside a cell can only support exposing one port with one protocol. We may need to provide support for specifying multiple ports for a component in order to support multiple protocols.

Won't fix. Cellery project is not actively maintained.


bicep logical operator: short-circuiting behavior not described

Accessing a non-existing property on an object is an error in bicep. Hence operators need to short-circuit for expressions like this to be possible:
contains(myObj, 'foo') && myObj.foo > 3
empty(myArr) || myArr[0] == 'bar'
I'm assuming this is how the operators behave, but this is not described explicitly for &&, ||, ?? and ?:.
Another minor issue on the same page:
the following two example lines imply that the result of a comparison operator needs to be converted to bool, but they should already return a bool. (Also a bool value is not a valid argument for the bool function, according to its documentation).
output andResultExp bool = bool(10 >= 10) && bool(5 > 2)
output orResultExp bool = bool(10 >= 10) || bool(5 < 2)

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 07335fd6-d5e0-b723-db4f-a785e4964165
Version Independent ID: 8de7b6de-e82e-7fbb-9deb-592d183bf462
Content: Bicep logical operators - Azure Resource Manager
Content Source: articles/azure-resource-manager/bicep/operators-logical.md
Service: azure-resource-manager
Sub-service: bicep
GitHub Login: @mumian
Microsoft Alias: jgao

@NaridaL
Thanks for your feedback! We will investigate and update as appropriate.

@NaridaL - Thank you for your feedback.  I will update the docs.

I have updated the article - https://github.com/MicrosoftDocs/azure-docs-pr/pull/221178
#please-close

While the example usage is helpful in the current description, I don't understand why an explicit, detailed description of the operator isn't included. It currently still just says "Determines if both values are true." @mumian @AjayBathini-MSFT


If maxzoom is true, disable pan

Hey everybody,
i'm breaking head with this problem. Is possible disable pan if max zoom is true? How i make this?

To make this, you should follow steps:

One variable maxZoom
One state hold currentZoom value.
Event catch every zoom and set value into currentZoom
In config pan disabled check: currentZoom === maxZoom


Question about controlling REST data in sidebar (user specific data)

Hello out there :)
I'm kinda new to angularjs and I'm making a single page application (SPA) where I need to have some menu items in the sidebar that needs to be updated with a REST service.
The menu items is links to open orders in a support system, so after the user has logged into the system all that specific users support cases should be displayed in the sidebar.
The REST services is fully functional and the get calls works as they should, but how is the smartest way of implementing a controller for the sidebar?
I'm using the mobile-angular-ui framework so that the sidebar is located in the index.html file and thereby controlled by the "app" controller. So when my users are browsing at the login screen (index.html) then all the get calls fails because they are called before user credentials are being validated.
Kind regards,
JW

Sorry but that's is not relevant issue for mobile-angular-ui you should ask this kind of question on stackoverflow.com or take a look at angularjs docs.

Closed, out of scope.


Benchmarks: align malloc'ed buffers.

Benchmarks should allocate with cacheline (often 64 bytes) alignment to avoid unreliable timings. This technique, storing the offset in the byte before the pointer, doesn't require C11's aligned_alloc for compatibility with older compilers.
For example, Glibc's x86_64 malloc returns 16-byte aligned buffers, which is not sufficient for AVX/AVX2 (32-byte preferred) or AVX512 (64-byte).

Thank you.


Range Slider | add "showHandleLabels" boolean prop and default label to handle's value

Default label should be the value that the handle represents.

Moved to 'done' but still open


fix(tracer.js): trim big traces

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Make the update interval configurable

This PR is an attempt to revive @tsg21’s effort in PR #72, created more than a year ago but which got stalled for apparently two reasons:

The proposed config flow changes not being displayed in the UI for an unknown reason.
The PR’s author and the repo’s maintainer not converging on a default update interval value.

This PR addresses those points by:

Fixing the voluptuous schema data type for the update_interval option.
Keeping the default update interval value unchanged from what it currently is: 45 seconds. The vast majority of users will presumably just go with the default, but concerned users will be allowed to change the update interval through the UI if / when the integration is (re)installed:

“99%” of the code is a copy-and-paste from PR #72, so credit goes to @tsg21. I have added the value of investigating and fixing the UI issue.
This PR is also related to issues #211, #215 and #222 insofar as reducing the polling frequency reportedly avoids WeConnect API errors (e.g. 403, 429) when the servers are busy (API call rate limiting / throttling).

Steps to delete the integration to be given the option of changing the update interval:

Then reinstall it by going to the Settings page again (second screenshot), clicking the Add Integration button and searching for Volkswagen We Connect ID.

Hey,
with that change would it be possible, to adjust the value in an automation, like setting 45s while driving and 2mins or higher, when stationary? Or would the integration have to restart, for the updated interval to take effect?

Hey, with that change would it be possible, to adjust the value in an automation, like setting 45s while driving and 2mins or higher, when stationary? Or would the integration have to restart, for the updated interval to take effect?

@SamuelBrucksch, with this PR, the integration would need to be removed and re-added for the update interval to be changed. I imagine that the best solution would be for the integration to provide a home assistant service that could be dynamically called by automations to set the polling interval. It should not be too hard to add this feature in another PR. However, I have submitted 6 PRs in the past week (as I started using this integration myself), but I am yet to hear anything from the repo maintainer (no comments or reviews, nothing merged). I think we need to wait to hear from @mitch-dc.

@SamuelBrucksch isn't this already possible by turning of the polling of the integration and using the homeassistant.update_entity service?

Haven't tried this myself though.

@michaelarnauts I think this is something different?

@SamuelBrucksch isn't this already possible by turning of the polling of the integration and using the homeassistant.update_entity service?

I can confirm that this approach works. It is not even necessary to turn off the integration’s regular polling, because the integration has a built-in “protection” that ignores further update requests for 24 seconds after an update.
I configured the integration with a 5-minute (300-second) update interval set through the config flow (previous screenshots). Then I verified that the following service call, when made through a script or automation or the Developer Tools UI, causes a data refresh by the VW We Connect integration:
service: homeassistant.update_entity
data: {}
target:
  entity_id:
    - sensor.my_id_3_plug_connection_state
    - sensor.my_id_3_state_of_charge
    - sensor.my_id_3_charge_power

Replace my_id_3 with the name you gave to your car. You can find it by clicking on any VW We Connect entity and then clicking the cogwheel:

Therefore, you could write a script or automation that detected the situation of interest (e.g. the vehicle is driving, or the vehicle is charging) and called the update_entity service at regular intervals, e.g. every 45 seconds.


"error": "could not JSON decode Lambda function response: statusCode validation failed"

When making the following request:
https://timemachine.pirateweather.net/forecast/[API_KEY]/53.35,-2.27,1682938800?exclude=currently,flags,daily
I get the following error:
{
    "message": "Bad Gateway",
    "error": "could not JSON decode Lambda function response: statusCode validation failed"
}

I get this error with every request I try that has a negative longitude.

Thanks for opening the issue, and apologies for the bug here! It has to do with the timing of a day that rolls over into the next month, but working on a fix now

I can confirm this is working now. Thank you for the quick response, it very much appreciated 👍


Why not Proxy?

Why is Proxy not used to implement function mimic?
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy

Proxy is slow and has some other downsides. Why make something dynamic when it can be done statically.


feat: add collection of bucks point feature files

DO NOT MERGE - we need to figure out how to handle POINT alongside the existing MULTIPOLYGON features.

DO NOT MERGE - we need to figure out how to handle POINT alongside the existing MULTIPOLYGON features.


xcode 11 file fixes

Swift packages fetched directly by Xcode 11 are stored in a different location than packages fetched by swift package generate-xcodeproj. Because of this, hacks that were previously used to automatically determine working directory no longer work in Xcode 11.
Luckily, Xcode 11's native SPM integration allows for persistence of project settings. This was a limitation that the original auto-detection hacks were attempting to work around. Because of this, we recommend that all Vapor 3 and 4 users using Xcode 11's native SPM support set a Custom Working Directory in their Run scheme to the desired folder:

This folder is usually the folder that contains your project's Package.swift file.

In order for the Custom Working Directory to pass through correctly, a check has been added for a unique string that should only appear when Xcode 11's native SPM integration is being used. This should allow for Vapor 3 projects to continue working normally with swift package generate-xcodeproj.
For Vapor 4, these hacks have been removed entirely, and directory config detection will always expect a Custom Working Directory to be set in the project's Run scheme.

Update: It may be possible that Xcode 11 could expose an environment variable containing the Swift package's root directory.

Update on this issue, it looks like SPM will not be exposing an environment variable. They gave this response to the feedback assistant request:
We have determined that this issue is not to be fixed/changed.

We considered this but decided not to do it because a package root can change depending on the context. For example, it can be inside a project/workspace.

Thank you for your feedback.

As an FYI this bug also breaks integrations with the .env support

Oh wow, am I allowed to say that manually setting this scheme configuration is going to be massive PITA when working in Xcode? This essentially means hardcoding an absolute path on a specific machine as the custom working directory, right?


Knowledge - When Syncing/ingestion is in progress , UI becomes unresponsive and very sluggish.

Note - I am testing this in test env which has lot of agents.
Steps to reproduce the problem:

Create an agent with knowledge from one drive location lot of files - 600+ files in my case.
Wait for all the files to be synced.
Ingest all files.
Notice that UI becomes unresponsive and  very sluggish when syncing is in progress.

https://github.com/user-attachments/assets/613f5755-0244-40fe-8ba7-3532aea7338a
After few minutes (even when sync is in progress), it recovers from this state. I am able to load the agent list page and work with the UI even though it is slow to respond.
Note - The same behavior is also seen when I exclude all files (after they have all been ingested). During the time when the files are getting unapproved , UI becomes unresponsive.

The same behavior with UI becoming  sluggish is also noted when syncing is in progress.
I see the issue with not being able to list agents ("No results" gets returned and then eventually agent list is presented).
https://github.com/user-attachments/assets/13651eaf-1f2a-4bc1-9a4f-eec047021cd0
UI starts becoming responsive again after the few glitches encountered.

I just tried to ingest the same Corp doc and don't see this issue. The UI and api respond within normal timespan.

@sangee2004 I can't reproduce it. Did the same test in testing env and everything looks fine. Can you retest this and let me know if you are able to reproduce?

We just notice this happen when ingesting corp docs in test env.

back to testing after the perf improvments

This issue is not seen anymore when testing with latest build in test env.


Dublin Core terms missing rdfs:subPropertyOf — propagates to RDF::Vocab

DCMI has stripped rdfs:subPropertyOf from all their properties, and this has apparently been propagated to RDF::Vocab, as a bunch of inferencing I was depending on just broke. Compare the current spec with the previous one (which has to be obtained from wayback).
Do we do them (us) a favour and add these relations back?

Not sure why they would have stripped these triples, but RDF::Vocab should typically represent what's published, although in some cases, we've needed to maintain a separate vocabulary. I'd rather not do that for such a core vocabulary, though. It's probably worth questioning people at DCMI on why this was changed. For example, Tom Baker and Paul Paul Walk. Or, take it up as in issue in https://github.com/dcmi/repository.
cc/ @paulwalk, @tombaker

I am going to assume it's a mistake since it isn't in the changelog. Is that repository the appropriate place to file an issue with them? Not a lot of activity on it.

If you like, I can roll back the update for this particular vocabulary until the matter has been resolved.

Many thanks for reporting this issue. In fact, you have, in passing, reported another issue, so I will treat these in turn:
1. Missing rdfs:subPropertyOf property
This was a simple mistake. We developed a completely new process to generate the RDF last year, and this property got missed. We have fixed the software to add rdfs:subPropertyOf where appropriate to the RDF, re-run the process, and checked the output.
Because this is a non-breaking change, we have immediately re-built the website to incorporate this change (this is now 'live').
2. Having to go to the Internet Archive for previous specs
This was also a mistake, based on some legacy redirect instructions in the web server configuration. These redirects are no longer necessary, and so I have simply removed them. You should now be able to go directly to previous versions of the RDF.
Apologies for the inconvenience, and thanks again for reporting.
Paul & Tom.
(and no, we haven't gone entirely mad yet....) ;-)

I just wanted to add that the current spec to which @doriantaylor pointed above - the HTML document - already correctly documented sub-property relations so did not need to be corrected. The previous version of that HTML document, along with all other previous versions (back to 2002) are available from a Release History page.

Thanks; I was looking for a channel at DCMI (like a mailing list or something) to discuss this issue but didn't have luck finding one, so opened this issue in the interim while I continued to rummage around. I should note as well that http://purl.org/dc/terms/ will still not open in Protégé—presumably a problem with content negotiation?

I have just tested the conneg using Curl - e.g.
curl -L --header accept:application/turtle http://purl.org/dc/terms/

This is working as expected. Without an explicit 'header accept' then http://purl.org/dc/terms/ will deliver HTML by default (by design).
I'm not able to test with Protégé I'm afraid....
Regarding channels to raise issues - there's always<EMAIL_ADDRESS>which we monitor.

Thanks @paulwalk, but note that the property mime-type for Turtle is text/turtle, not application/turtle. In any case, I don't see any triples in the returned Turtle which contain rdfs:subPropertyOf. For example, the definition for dateAccepted:
dcterms:dateAccepted
    dcterms:description "Recommended practice is to describe the date, date/time, or period of time as recommended for the property Date, of which this is a subproperty.  Examples of resources to which a date of acceptance may be relevant are a thesis (accepted by a university department) or an article (accepted by a journal)."@en ;
    dcterms:issued "2002-07-13"^^<http://www.w3.org/2001/XMLSchema#date> ;
    a rdf:Property ;
    rdfs:comment "Date of acceptance of the resource."@en ;
    rdfs:isDefinedBy <http://purl.org/dc/terms/> ;
    rdfs:label "Date Accepted"@en ;
    rdfs:range rdfs:Literal .

The comment indicates it's a sub property of Date, but there is no such triple. But, the HTML documentation says it's a sub property of dce:date as well as dcterms:date.
curl -L -I -H accept:application/turtle http://purl.org/dc/terms/ indicates it's coming from http://dublincore.org/specifications/dublin-core/dcmi-terms/dublin_core_terms.ttl
The RDF/XML retrieved via content negotiation also doesn't include the property.
I'm happy to take this to the mailing list, if you like.

Likewise; looks like my trouble with Protégé is mainly with Protégé itself, although http://purl.org/ontology/bibo/ (which redirects to https://www.dublincore.org/specifications/bibo/bibo/bibo.rdf.xml) is also acting up with a 403, but only in Protégé.

I will have to pick this up in the morning - but just to say I'm more than happy to sort it out here in GitHub.

I believe this should be OK now.
I have tested curl -L --header accept:text/turtle http://purl.org/dc/terms/ and can see some rdfs:subPropertyOf properties in there.
Sorry about this - there were two issues:

I forgot to generate the Turtle and RDF-XML from the NTriples which are generated by my script
It was all cached by Cloudflare anyway....

I have purged the caches -should be OK now.

Thanks, Paul; I see them there now.
@doriantaylor I'll update and create a new release.

Thanks!


[boost-cobalt] Build error on x64-linux

Package<EMAIL_ADDRESS>Host Environment

Host: x64-linux
Compiler: GNU 10.2.1
vcpkg-tool version: 2024-04-23-d6945642ee5c3076addd1a42c331bbf4cfc97457
vcpkg-scripts version: cbf4a6641 2024-05-09 (10 hours ago)

To Reproduce
vcpkg install boost-cobalt
Failure logs
-- Using cached boostorg-cobalt-boost-1.85.0.tar.gz.
-- Cleaning sources at /home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/src/ost-1.85.0-a6678fa3f6.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source /home/mezdej/environment/vcpkg/downloads/boostorg-cobalt-boost-1.85.0.tar.gz
-- Using source at /home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/src/ost-1.85.0-a6678fa3f6.clean
-- Configuring x64-linux
-- Building x64-linux-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
    Command failed: /home/mezdej/environment/vcpkg/downloads/tools/cmake-3.29.2-linux/cmake-3.29.2-linux-x86_64/bin/cmake --build . --config Debug --target install -- -v -j21
    Working Directory: /home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/x64-linux-dbg
    See logs for more information:
      /home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/install-x64-linux-dbg-out.log
      /home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/install-x64-linux-dbg-err.log

Call Stack (most recent call first):
  installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
  installed/x64-linux/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
  installed/x64-linux/share/vcpkg-boost/boost-install.cmake:65 (vcpkg_cmake_install)
  ports/boost-cobalt/portfile.cmake:12 (boost_configure_and_install)
  scripts/ports.cmake:175 (include)

/home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/install-x64-linux-dbg-err.log
ninja: error: unknown target 'install'

/home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/install-x64-linux-dbg-out.log
Change Dir: '/home/mezdej/environment/vcpkg/buildtrees/boost-cobalt/x64-linux-dbg'

Run Build Command(s): /home/mezdej/environment/vcpkg/downloads/tools/ninja/1.10.2-linux/ninja -v -v -j21 install

Please check the configure log.

I have found that entry line:
"Boost.Cobalt: not building, can't include ."
config-x64-linux-out.log
config-x64-linux-dbg-CMakeCache.txt.log

try_compile(
        BOOST_COBALT_HAS_COROUTINE_INCLUDE
        ${CMAKE_CURRENT_BINARY_DIR}
        ${CMAKE_CURRENT_LIST_DIR}/coroutine.cpp
        CXX_STANDARD 20
        CXX_STANDARD_REQUIRED 20
        OUTPUT_VARIABLE TRY_COMPILE_OUTPUT)

if (NOT BOOST_COBALT_HAS_COROUTINE_INCLUDE)
    message(STATUS "Boost.Cobalt: not building, can't include <coroutine>.")
    message(DEBUG ${TRY_COMPILE_OUTPUT})
    return()
endif()

Need to check why try_compile fails
check the *.yaml file in the subfolder CMakeFiles of the build folder

gcc-10 probably needs -fcoroutines in CXXFLAGS

Please add -fcoroutines in CXXFLAGS for gcc-10 @FrankXie05

@mezdej I will do it. :)

@mezdej how to add -fcoroutines?

I've found the same issue, this is my log:
Change Dir: '/usr/local/vcpkg/buildtrees/boost-cobalt/x64-linux-dbg'

Run Build Command(s): /usr/bin/ninja -v -v -j9 install

uninstalling ninja-build fixes it
ninja-build version:
debian@ns3048085:~$ ninja --version
1.11.1

c++ version:
Debian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12
Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12
Candidate multilib: .;@m64
Selected multilib: .;@m64

Found this issue when searching for errors in logs. My error logs are similar up to CMakeConfigureLog.yaml, though I don't think they are caused by -fcoroutines or ninja.
CMakeConfigureLog.yaml shows error at "CMAKE_HAVE_LIBC_PTHREAD"
Relevant error output from pthread check:

kind: "try_compile-v1"
...
checks:
  - "Performing Test CMAKE_HAVE_LIBC_PTHREAD"
...
buildResult:
  variable: "CMAKE_HAVE_LIBC_PTHREAD"
  cached: true
  stdout: |
    ...
    ...
    src.cxx:(.text+0x3e): undefined reference to `pthread_create'
    src.cxx:(.text+0x4a): undefined reference to `pthread_detach'
    src.cxx:(.text+0x56): undefined reference to `pthread_cancel'
    src.cxx:(.text+0x67): undefined reference to `pthread_join'
    src.cxx:(.text+0x7b): undefined reference to `pthread_atfork'
    collect2: error: ld returned 1 exit status
    ninja: build stopped: subcommand failed.

Additional info:
Package<EMAIL_ADDRESS>vcpkg tag at 2024-07-12
Environments:
Tested on 2 different Ubuntu distributions running on WSL with Ubuntu-24.04 and Ubuntu-18.04.
Test program configures and builds on Windows 10 and Ubuntu-24.04.

Windows 10: Compiler MSVC - No Error
Ubuntu-24.04: Compiler GNU 13.2.0 - No Error
Ubuntu-18.04: Compiler GNU 7.5.0 - Error

I would appreciate any guidance about the cause and workarounds.

Same problem too.

I've added set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fcoroutines") to my cmake files but I still got error "Boost.Cobalt: not building, can't include <coroutine>."
@mezdej have you resolve this ?

I solved it by removing /usr/bin/ninja

I solved it by removing /usr/bin/ninja

Probably not.

Additional info: Package<EMAIL_ADDRESS>vcpkg tag at 2024-07-12
Environments: Tested on 2 different Ubuntu distributions running on WSL with Ubuntu-24.04 and Ubuntu-18.04. Test program configures and builds on Windows 10 and Ubuntu-24.04.
* Windows 10: Compiler MSVC - No Error

* Ubuntu-24.04: Compiler GNU 13.2.0 - No Error

* Ubuntu-18.04: Compiler GNU 7.5.0 - Error

I would appreciate any guidance about the cause and workarounds.

What I see:

Old compilers don't provide the required toolchain capabilities. (Coroutines.)
The configuration step doesn't fail but simple creates no build/install rules. (Unusual.)
The build/install step fails becuase there are no such rules.

The solution is to acquire a capable toolchain.

Can anyone suggest how to resolve this ?

https://github.com/microsoft/vcpkg/issues/38677#issuecomment-2506757560: "The solution is to acquire a capable toolchain."

Can anyone suggest how to resolve this ?

#38677 (comment): "The solution is to acquire a capable toolchain."

How to do this  @dg0yt ?

You mention clang++-17, but is this really the CXX compiler used by CMake? (Check config log.)

``> You mention clang++-17, but is this really the CXX compiler used by CMake? (Check config log.)
Yes @dg0yt this is the CXX compiler used by CMake.
I am getting below config log, same error : Boost.Cobalt: not building, can't include <coroutine>.


Refs #25632: Documented missing version requirements for GeoDjango DB functions in db-api.txt.

merged in 5ce84b8044b87b77eff329ed808e8be493a7cfe6, thanks!


Update  doc building and deploy

It seems this PR contains files that come originally from the scikit-learn codebase. You are not allowed import them without mentioning the source.

Thanks for letting me know, I added a copied from note.

That's not technically enough. You must state the original source, along with the license...

Is this sufficient?
# Copied from https://github.com/scikit-learn/scikit-learn/blob/master/build_tools/travis/test_script.sh
# The scikit-learn developers.
# License: BSD-style

Please. If we are having a discussion, wait for everyone to agree. You merged #854 without waiting for the input you asked from me...

Ok, sorry, but I needed to push the build CI so that I can test further, this is quite time consuming..


introducing the collection field

Generated by Django 4.1.7 on 2023-11-13 12:16
from django.db import migrations
import jsonfield.fields
class Migration(migrations.Migration):
dependencies = [
    ('app', '0001_initial'),
]

operations = [
    migrations.AddField(
        model_name='favoritedocument',
        name='collection_id',
        field=jsonfield.fields.JSONField(default=dict),
    ),
    migrations.AddField(
        model_name='favoritetemplate',
        name='collection_id',
        field=jsonfield.fields.JSONField(default=dict),
    ),
]

The migration is about introducing the collection_id field in the db since it was not initially there.

msg = create_favourite(
    request.data["item"],
    request.data["item_type"],
    request.data["username"],
)

The   request.data["item"] has the collection id, therefore there's no need for changing the view ... Below is how the payload looks like.
{
"item": {
"_id": "65250c0ca99ec55c6c0927ab",
"company_id": "64ecb08a3033b00f16a496f4",
"collection_id":"65250c0b7b793fd4a245e369",
"template_name":"New Invoice Template"
},
"item_type": "template",
"username": "MorvinIan"
}


Consider implementing TRACE logging

Seems we can implement custom logger levels on the logging API, although not advised.
We may benefit from implementing a TRACE level for writing debugging payloads, preventing payload spam from DEBUG logs.

Making our own logger level is as simple as logging at a specific int. DEBUG logs at int 10, so we might want to use 5. This might also mean we should create our own loggers so we can do this logger.trace(...). This function should be as the other logging ones, if the logger is not enabled for TRACE, don't do anything

@davfsa theres stuff for this already but it isn't advised and it is a silly idea so it is gone.