Issue with new array syntax - PHP line 82

When typing /** and hitting enter if the function below has an array using square bracket syntax, it throws up the error:
Cannot read property '1' of null - lib/languages/php.js line 82
function($param_1, $param_2 = ['1','2','3'])
This isn't a problem as long as you use the original array syntax.
function($param_1, $param_2 = array('1','2','3'))
Thanks for the good work on the plugin, hopefully this will help resolve this issue.

Fixed by @jeremyvii in #298 and released with v0.13.3


Code generation example

An example of how we can use sympy. autowrap to automatically generate C code and wrap it in Python.

Quick Q: What will the codegen be used for?

Generating formula in C code which should run faster than natively in Python, so we have a more competitive run time and compelling story


it's seems not convergent

the code of gan_64x64.py seems not convergent

Have you trained the model yet@cyx669521, I also find it is not convergent

@Marco111-max
@cyx669521
This project is no longer maintained. Please visit https://github.com/Lornatang/PyTorch-WGANGP


Builder.storeSlice is non-exhaustive

Current implementation of Builder.storeSlice writes the provided slice partially filling up the available space (bits and refs). This in turn impacts upstream APIs such as storeBuilder.

I believe such behaviour might be surprising to some users and may cause hard to catch bugs.
Suggestion: check if there is enough room to store the whole slice and return the error otherwise. If there is a legitimate usecase to write the slice partially, I'd suggest making it explicit in the name of the method and in the documentation. E.g. storePartialSlice or something like that.

Oops, I misread the code. This will fail if the src slice overflows this slice. Thanks to @KuznetsovNikita for correction.


Ease of accepting TypedData arguments

So I'm running up against a scenario where I would like to accept some TypedData arguments, and experiencing some paint points. Take this example:
use magnus::{define_class, function, prelude::*, Error};

#[derive(Debug, Clone)]
#[magnus::wrap(class = "Point")]
struct Point {}

#[magnus::wrap(class = "Triangle")]
struct Triangle {
    a: Point,
    b: Point,
    c: Point,
}

impl Triangle {
    fn new(a: Point, b: Point, c: Point) -> Self {
        Self { a, b, c }
    }
}

#[magnus::init]
fn init() -> Result<(), Error> {
    define_class("MultiPoint", Default::default())?
        .define_singleton_method("new", function!(Triangle::new, 3))?;
    Ok(())
}

Will lead to this error currently:
error[E0599]: the method `call_handle_error` exists for struct `Function3<fn(Point, Point, Point) -> Triangle {Triangle::new}, Point, Point, Point, Triangle>`, but its trait bounds were not satisfied
  --> src/lib.rs:23:41
   |
5  | struct Point {}
   | ------------ doesn't satisfy `Point: TryConvert`
...
23 |         .define_singleton_method("new", function!(Triangle::new, 3))?;
   |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^ method cannot be called on `Function3<fn(Point, Point, Point) -> Triangle {Triangle::new}, Point, Point, Point, Triangle>` due to unsatisfied trait bounds
   |
   = note: the following trait bounds were not satisfied:
           `Point: TryConvert`
note: the following trait must be implemented
  --> /Users/ianks/.cargo/git/checkouts/magnus-af51bb84edff177b/cc852bf/src/try_convert.rs:17:1
   |
17 | / pub trait TryConvert: Sized {
18 | |     /// Convert `val` into `Self`.
19 | |     fn try_convert(val: Value) -> Result<Self, Error>;
20 | | }
   | |_^
   = note: this error originates in the macro `function` (in Nightly builds, run with -Z macro-backtrace for more info)

The Issue
Currently, [TryConvert] is only implemented for &TypedData]try-convert. However, TypedData cannot be derived for generic types (i.e. you cannot specify the lifetime of each point in the triangle struct Triangle<'point>). So when taking the &Point arg by reference, you have to clone the point:
 impl Triangle {
-    fn new(a: Point, b: Point, c: Point) -> Self {
-        Self { a, b, c }
+    fn new(a: &Point, b: &Point, c: &Point) -> Self {
+        Self {
+            a: a.clone(),
+            b: b.clone(),
+            c: c.clone(),
+        }
     }
 }

Potential Solutions
Since the wrap macro is a bit hidden, it took me a bit to understand what the issue was, and I imagine this will be a pain point for others adopting magnus as well. Here are a couple of ideas I had for fixing it:

Add a impl<T: TypedData> TryConvert for T which would effective do the cloning for you (easiest for the end user, easier to implement)
Add ability to derive when using lifetimes with TypedData so users could specify that the &'point Point would live at least as long as the triangle (hardest for end user, hardest to implement. Also unsound if the user doesn't mark Point correctly...)

Curious to hear your thoughts, maybe there is a better way?

(writing this on my phone, sorry if formatting is terrible)
I screwed up with impl<T: TypedData> TryConvert for &T such that you can get any lifetime you want out of it, like &'static Point would 'work', so I’m going to make some changes to it.  I could probably  add an option to the macro to generate a cloning impl.
In the meantime will Rust let you impl TryConvert yourself? Something like
impl TryConvert for Point {
    fn try_convert(val: Value) -> Result<Self, Error> {
        val.try_convert::<&Point>().map(|p| p.clone())
    }
}

I was able to get past it, just figured it was a good opportunity to provide some feedback on the ergonomics.
Thinking about lifetimes / GC a bit more, it would be so nice to have magnus manage them somehow. This is totally off the cuff, but hear me out:
Imagine you store an RString in a TypedData struct. In order to have any safety guarantees about the lifetime of that RString, you need to ensure that it is gc::mark’d. So, I wonder if there is a way to encapsulate that in a type (such as GcMarked<RString>), and automatically generate the dmark method. With that, you could declare a valid dependent lifetime for the TypedData struct, which specifies that the RString lives *at least as long as TypedData. it would be something like:
struct Thing<`thing, R: GcMarked + `thing>(R);

On my phone as well, so that may just be complete gibberish, but hopefully I made some sense. The idea would be to automatically generate the mark function so we could statically check the lifetimes of ruby objects stored in typed data structs.
Would be nifty!


Fixes and updates

Updated readme description of the package
removed deprecated dependencies
fixed issue #420

closes #420


[Docs/Service Level Readme] Fix DirectoryPath logic

The following pipelines have been queued for testing:java - templatejava - template - testsjs - templatenet - templatenet - template - testspython - templatepython - template - tests You can sign off on the approval gate to test the release stage of each pipeline. See eng/common workflow

This should've merged a while back. I'll merge it soon but not during release week.


inventorykamera error

i don't really get what is wrong
à InventoryKamera.Form1.<>c__DisplayClass21_0.<StartButton_Clicked>b__0() dans B:\Projects\VisualStudio\InventoryKamera\InventoryKamera\InventoryKamera\Form1.cs:ligne 207

Having the same problem

@Kideathh do you have any other information you can give us about the error or have you resolved it?

I am going to close this issue as no more useful information has been provided in quite some time. Please feel free to reopen this issue or to open a new issue should problems come up.


SU-25 change to SU-25T

Change the SU-25's in the mission to SU-25T's so that they can perform SEAD.

Has this been taken care of?

done


Skip a test OpsOnDiffFramesEnabledTest.test_no_index.

Currently the master build is failing.
Seems like there are the conflict changes between #633 and #639.
I'd skip the test for now to unblock other PRs.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@795b4ed). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #651   +/-   ##
=========================================
  Coverage          ?   91.13%
=========================================
  Files             ?       32
  Lines             ?     5267
  Branches          ?        0
=========================================
  Hits              ?     4800
  Misses            ?      467
  Partials          ?        0

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 795b4ed...0ebf189. Read the comment docs.

I'd merge this for now.

Thanks! Will take a look later


Consider multilingual internationalization of misinformation?

pydantic is a great open source project, but in some non-English speaking countries, it may be difficult for some people to understand its misinformation? Can you consider adding something like i18n to internationalize the error message.

This is already possible, but documenting it has already been requested on #322


Trading fees breakdown

As a user I want to know what fees I am paying when submitting an order.
The scope of this ticket includes:

Being able to query the fees from the app backend
Include the fees into the buy/sell bottom sheet (that might require displaying the fees there)
Display the fee breakdown in the confirmation screen

Not within the scope of this ticket:

Fees that are not related to trading
Perpetual fees

Fees which are relevant:

orderbook fee (maker/taker fee)
transaction fee (inside the virtual channel) - user gets those back

related to  #225

Find below my proposal on how to break down the trading fees.

I opted to add the fees directly to the trading screen, as I remember having some feedback from users, that they wanted to see the fees right away.
It is a bit tricky to depict the "collateral tx fees" (representing a transaction fee in case we have to go onchain) as this is already part of the margin. I opted to add the total costs as well to the trade screen to show that these costs are already covered in the margin. The info should give more explanation about the nature of this fee. I would do that in the same way as we are currently depicting our market order info button.

@da-kami @bonomat @luckysori @klochowicz any thoughts on this?

Sorry for missing this.
I don't see it yet but it would be good if we could indicate better that Collateral Tx Fee is not being paid but just a collateral. I would not group it into Fees because of this.
... Maybe PWCTX (Potential Worst-Case Transaction Fee) 😬.
The matching fee sounded weird to me first because I have never heard it in this context. What do you think of trading fee? I know this makes it more abstract than matching but it reflects that this is the fee which needs to be paid for trading.

I don't see it yet but it would be good if we could indicate better that Collateral Tx Fee is not being paid but just a collateral.

The idea was to add the explanation to the info button in the same way as we are currently depicting our market order info button.

I would not group it into Fees because of this.

fair enough, I'll remove the grouping.

... Maybe PWCTX (Potential Worst-Case Transaction Fee) 😬.

Sounds a bit complicated 😅, maybe we shouldn't call it a fee at all? 🤔

The matching fee sounded weird to me first because I have never heard it in this context. What do you think of trading fee? I know this makes it more abstract than matching but it reflects that this is the fee which needs to be paid for trading.

If this is the more common terminology, I am happy with it. Another option could be orderbook fee.

fair enough, I'll remove the grouping.

thanks :)

Sounds a bit complicated 😅, maybe we shouldn't call it a fee at all? 🤔

I was not 100% serious...or was I ? 😅 I think it's fair to call fee. I would not overthink this for now and just call it what it is: Potential Worst-Case Transaction Fee

If this is the more common terminology, I am happy with it. Another option could be orderbook fee.

Imho it is. ordebook fee also works for me.

Users suggestion on how to display the Collatoral Tx Fee or Potential Worst-Case Transaction Fee after the money is locked up. I guess we will still need a way of communicating this fee upfront.

Users suggestion on how to display the Collatoral Tx Fee or Potential Worst-Case Transaction Fee after the money is locked up. I guess we will still need a way of communicating this fee upfront.

I like the suggestion of the user - on top of that we could abstract a simplified overview - potentially without text, and then details when the user opens the dropdown for balance details.
Something like this maybe:


Before:
julia> using Revise, UnROOT
[ Info: Precompiling UnROOT [3cd96dde-e98d-4713-81e9-a4a1b0235ce9]
cons
julia> const t = LazyTree(ROOTFile("Run2012BC_DoubleMuParked_Muons.root"), "Events", ["Muon_pt"]);

julia> @time  for evt in t
                evt.Muon_pt
              end
  5.021026 seconds (1.93 M allocations: 4.254 GiB, 4.75% gc time, 4.34% compilation time)

julia> @time  for evt in t
                evt.Muon_pt
              end
  4.285786 seconds (58.16 k allocations: 4.159 GiB, 1.68% gc time)

julia> @time  for evt in t
                evt.Muon_pt
              end
  4.255702 seconds (58.16 k allocations: 4.159 GiB, 1.48% gc time)

After:
julia> const t = LazyTree(ROOTFile("Run2012BC_DoubleMuParked_Muons.root"), "Events", ["Muon_pt"]);

julia> @time let x = 0
           for evt in t
               evt.Muon_pt
           end
           x
       end
  4.731603 seconds (1.46 M allocations: 3.674 GiB, 4.55% gc time, 4.94% compilation time)
0

julia> @time  for evt in t
                evt.Muon_pt
              end
  4.096869 seconds (59.20 k allocations: 3.603 GiB, 1.22% gc time)

Won't this mess up the basketarray API?
yep... which is why I closed it.

I think we should disable array() API. Maybe only allow if for raw = true

Just tested this PR vs master on another machine. I get @btimes ranging from 1.698 to 1.652 when alternately switching between the two. It seems like there's no time difference. My benchmark is
julia> using UnROOT

julia> const t = LazyTree(ROOTFile("uncompressed_Run2012BC_DoubleMuParked_Muons.root"), "Events");

julia> function foo(t)
           s = 0.0f0
           for evt in t
               s += sum(evt.Muon_pt)
           end
           s
       end
foo (generic function with 1 method)

julia> @benchmark foo(t)

With a benchmark where I don't loop over the elements I get
julia> function foo2(t)
           for evt in t
               evt.Muon_pt
           end
       end
foo2 (generic function with 1 method)

julia> @benchmark foo2(t) seconds=15 # master
BenchmarkTools.Trial: 17 samples with 1 evaluation.
 Range (min … max):  851.025 ms … 991.843 ms  ┊ GC (min … max): 6.61% … 6.04%
 Time  (median):     876.236 ms               ┊ GC (median):    6.92%
 Time  (mean ± σ):   889.033 ms ±  40.918 ms  ┊ GC (mean ± σ):  6.75% ± 0.29%
 Memory estimate: 1.82 GiB, allocs estimate: 14304.

julia> @benchmark foo2(t) seconds=15 # PR
BenchmarkTools.Trial: 17 samples with 1 evaluation.
 Range (min … max):  769.904 ms … 873.306 ms  ┊ GC (min … max): 5.60% … 5.41%
 Time  (median):     795.748 ms               ┊ GC (median):    5.84%
 Time  (mean ± σ):   800.257 ms ±  23.881 ms  ┊ GC (mean ± σ):  5.78% ± 0.20%
 Memory estimate: 1.26 GiB, allocs estimate: 14602.

but it's kind of a dumb benchmark?

at least

Memory estimate: 1.26 GiB,


Document differences between Dependency-Track 4.x and Hyades / DT 5.x

While we are mostly compatible with DT 4.x, we made a few changes that users should know about when considering an upgrade.
For example:

How configuration is done
What RDBMSes are supported / or not supported
New notifications that were added
New features (e.g. workflow state tracking)
...

Breaking Change: Some Notification Values Changed

Generally, subject objects passed to notification templates are Protobuf objects now, as defined in https://github.com/DependencyTrack/hyades/blob/main/proto/src/main/proto/org/dependencytrack/notification/v1/notification.proto

Shouldn't break anything by itself, but some fields may be named differently

Level values are now prefixed with LEVEL_ (before: INFORMATIONAL, now: LEVEL_INFORMATIONAL)
Scope values are now prefixed with SCOPE_ (before: SYSTEM, now: SCOPE_SYSTEM)
The timestamp value passed to notification templates is now consistently formatted with three fractional digits (https://github.com/DependencyTrack/hyades/pull/795)

Before: 1970-01-01T00:11:06Z, or 1970-01-01T00:11:06.000Z, or 1970-01-01T00:11:06.000000Z, or 1970-01-01T00:11:06.000000000Z
Now: 1970-01-01T00:11:06.000Z


DOC Add docs on how to run napari headless

Description
closes #4930
Adds docs on how to run napari headless. Summary of info from: https://github.com/napari/napari/pull/4929/files#r947506160 and https://github.com/lucyleeow/napari/pull/7#discussion_r946160065

Type of change

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

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[ ] example: all tests pass with my change
[ ] example: I check if my changes works with both PySide and PyQt backends
as there are small differences between the two Qt bindings.

Final checklist:

[ ] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If I included new strings, I have used trans. to make them localizable.
For more information see our translations guide.

Thanks for the reviews @Czaki and @tlambert03 , changes made.

Feel free to self-merge, I'm just unsure about the .md.

Thanks for the reviews!


[ZEPPELIN-4226] Fix "View in Spark web UI" in kubernetes mode

What is this PR for?
When Zeppelin is running in Kubernetes, "View in Spark web UI" gives internal address, instead of address defined in SERVICE_DOMAIN.
I think this problem is side effect of https://github.com/apache/zeppelin/pull/3375 and this PR includes fix and updated unittest.
What type of PR is it?
Bug Fix
What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-4226
How should this be tested?
Run Zeppelin on kubernetes, and run spark job, click "View in Spark web UI" button.
Questions:

Does the licenses files need update? no
Is there breaking changes for older versions? no
Does this needs documentation? no

LGTM

Merge to master


Engine.run: return_state removed.

Description of the Change:

Removed the LocalEngine.run() argument return_state. Now a state object is returned iff modes is not an empty sequence.

Benefits:
One less argument. I don't see any uses for state objects with no modes.

@smite, don't forget to add a line to the .github/CHANGELOG.md file, summarizing the change, with a link back to this PR.

Description of the Change:

Removed the LocalEngine.run() argument return_state. Now a state object is returned iff modes is not an empty sequence.

Benefits:
One less argument. I don't see any uses for state objects with no modes.

One place where it might be useful have an option "please don't return a state object" is with remote simulators. The user might not care about the state object, but just the measurement results. In that case, explicitly passing modes=[] rather than return_state=False might be less intuitive. But I think that we don't need to design around that use-case yet, and when we have it implemented, we can find a clean way to do it by default.


Uncaught TypeError: Cannot read property 'visit' of null

Got this error, i'm trying to use for laravel Jetstream project with Inertiajs
Uncaught TypeError: Cannot read property 'visit' of null
at HTMLDocument.s (app.js:122)
at Object.fireEvent (app.js:109)
at app.js:109
at

I'm getting this error as well. I did the init inside my app.js, which looks like this:
require('./bootstrap');

import Vue from 'vue';

import { InertiaApp } from '@inertiajs/inertia-vue';
import { InertiaForm } from 'laravel-jetstream';
import { InertiaProgress } from '@inertiajs/progress';
import PortalVue from 'portal-vue';

Vue.mixin({ methods: { route } });
Vue.use(InertiaApp);
Vue.use(InertiaForm);
Vue.use(PortalVue);

InertiaProgress.init();

const app = document.getElementById('app');

new Vue({
    render: (h) =>
        h(InertiaApp, {
            props: {
                initialPage: JSON.parse(app.dataset.page),
                resolveComponent: (name) => require(`./Pages/${name}`).default,
            },
        }),
}).$mount(app);

Is this not the right place to init?

Hmm, this is almost guaranteed to be a result of using<EMAIL_ADDRESS>which requires a newer version of Inertia.js. I'd recommend either upgrading Inertia.js to the latest version, or downgrading @inertiajs/progress to ^0.1.0.
Please report back if that helps. 👍

Ahh, that did the trick. Updated the following:
@inertiajs/inertia from ^0.3.0 to ^0.6.1
@inertiajs/inertia-vue from ^0.2.0 to ^0.4.1
(@inertiajs/progress was already at ^0.2.1)
For anyone else coming from a fresh install of Jetstream, updating inertia required some changes... the main one being anywhere that accessed shared data like $page.user or $page.jetstream has to be changed to $page.props.user and $page.props.jetstream. Not sure if this is documented anywhere...

Awesome, thanks for reporting back @bbeng89. That's what I expected. 👍
And yes, the $page.props change was documented. See here.

Thanks the problem has been solved quickly in jetstream with
npm uninstall @inertiajs/progress
npm i<EMAIL_ADDRESS>


Does the abd support concurrent operations？

Hi guys,
I am a learner of python-abd, and I want to know whether this support concurrent operations at the same time, for example, whether two input_swipe() operations are allowed to run in two separate processes, like human can use two fingers to swipe in two regions simultaneously.
Any idea or answer will be appreciated!

ppadb can be used in a multi-threaded setting. However, what you are trying to do is possibly a limitation in adb.
Easiest way to try what you are trying to do is by opening two terminals on your host computer and perform the input swipe command through 2 adb shell commands on both terminals.
If that works, I am certain that you can do it in ppadb as well.

Hi, @ebisek-logi , thanks for your information and sharing.
I have a similar feeling that adb might not be able to realize concurrent operations like real humans.
And there is another key point is whether adb communication is serial port communication. Because it is serial communication, even if  2 adb shells can work together, they still did the operations in the serial way instead of parallel way.

Hello @songyuc ,
That is not entirely correct. It really is about synchronous versus asynchronous support inside the Android framework. Simply put if you can send a touch-down, move, touch-up command in one shell and the same in another, then the serialization would not be a factor.
I am not a UI automation expert in Android (I focus more on hardware and embedded), but I am pretty sure that with the above approach you can make it work with ppadb and with regular adb)
-Edwin

I have a question that kind of fits the title. I need to spawn a process (netcat) on the device without my Python program hanging up and waiting for the process to end (which it doesn't / shouldn't) which is what happens if I just use device.shell(xxx).
What would you recommend to achieve this? It is possible to do via ADB, that I know for sure because I used pwnlibs' ADB feature to do the same thing before.

@unixb0y I needed something similar and wanted to run a binary "forever", so I implemented the following workaround:
https://github.com/Hamz-a/frida-android-helper/blob/787590bdfc3fb13474b90bd3e8faee567425a944/frida_android_helper/server.py#L32
Basically, your command will look like:
device.shell('/data/local/tmp/nc && sleep<PHONE_NUMBER> &', timeout=1)

Prepend the command with su -c  if u need to run nc with root. The workaround consists of running the binary that needs to run forever, then right after it a "forever" sleep command and configure the shell function with a timeout of 1s.

@Swind I think this issue can be closed.


feat(tagsInput): Add disableRemoveConfirmation option

Add disableRemoveConfirmation option so that you can press backspace once to remove the last tag instead of having to press it twice.
Closes #130
Tried to cover everything mentioned in CONTRIBUTING.md. Let me know if I missed anything.

Would love to see this get merged @mbenford

Same here! If it can be merged it would be awesome @mbenford


Distance between rotations

🚀 The feature, motivation and pitch
For two rotations, the distance is a very important property
Alternatives
Here are some reference links
1.http://www.boris-belousov.net/2016/12/01/quat-dist/
2.https://www.cs.cmu.edu/~cga/dynopt/readings/Rmetric.pdf
Additional context
No response

@ShaoshuSu

Hi @HongLouyemeng, thanks for your suggestion : )
We have noticed that topic and will work on that soon

The feature has been partly implemented in Pull Request #216 (in posediff function).


Document the getters for the /rooms/{roomId} APIs

Add some documentation for the /room/{roomId} APIs using the new swagger.

@Kegsay I think I've addressed your comments.

Looking at http://matrix.org/speculator/spec/56#get-matrix-client-api-v1-rooms-roomid-initialsync now:

GET /_matrix/client/api/v1/rooms/{roomId}/state is missing a response format

Otherwise LGTM

api/client-server/v1/rooms.yaml, line 348 [r3] (raw file):
Test thread start

Comments from the review on Reviewable.io

api/client-server/v1/rooms.yaml, line 348 [r1] (raw file):
Okay, sounds good to me.

Comments from the review on Reviewable.io

Fixed the missing response format.


Enable piping of individual items in a list answer into question_options

Currently, items in an answer that is a list can be piped individually into a question_text but not question_options:
from edsl import QuestionList, QuestionFreeText, QuestionMultipleChoice, Survey

q1 = QuestionList(
    question_name = "q1",
    question_text = "What are your 3 favorite colors?",
    max_list_items = 3
)
q2 = QuestionFreeText(
    question_name = "q2",
    question_text = """Which color is your #1 favorite:
    {{ q1.answer[0] }} or {{ q1.answer[1] }} or {{q1.answer[2] }}?"""
)
q3 = QuestionMultipleChoice(
    question_name = "q3",
    question_text = "Which color is your #1 favorite?",
    question_options = [
    "{{ q1.answer[0] }}",
    "{{ q1.answer[1] }}"
    ]
)

survey = Survey([q1,q2,q3])

results = survey.run()
results.select("q1","q2").print(format="rich")

Attempt 1 failed with exception:'q1' is undefined now waiting 1.00 seconds before retrying.Parameters: start=1.0, max=60.0, max_attempts=5.

Attempt 2 failed with exception:'q1' is undefined now waiting 2.00 seconds before retrying.Parameters: start=1.0, max=60.0, max_attempts=5.

Attempt 3 failed with exception:'q1' is undefined now waiting 4.00 seconds before retrying.Parameters: start=1.0, max=60.0, max_attempts=5.

Attempt 4 failed with exception:'q1' is undefined now waiting 8.00 seconds before retrying.Parameters: start=1.0, max=60.0, max_attempts=5.

Exceptions were raised in 1 out of 1 interviews.

---------------------------------------------------------------------------
UndefinedError                            Traceback (most recent call last)
Cell In[30], line 1
----> 1 results = survey.run()
      2 results.select("q1","q2").print(format="rich")

File [~/edsl/edsl/surveys/Survey.py:584](http://localhost:8888/lab/tree/~/edsl/edsl/surveys/Survey.py#line=583), in Survey.run(self, *args, **kwargs)
    567 """Turn the survey into a Job and runs it.
    568
    569 Here we run a survey but with debug mode on (so LLM calls are not made)
   (...)
    580 └──────────────┘
    581 """
    582 from edsl.jobs.Jobs import Jobs
--> 584 return Jobs(survey=self).run(*args, **kwargs)

File [~/edsl/edsl/jobs/Jobs.py:502](http://localhost:8888/lab/tree/~/edsl/edsl/jobs/Jobs.py#line=501), in Jobs.run(self, n, debug, progress_bar, stop_on_exception, cache, check_api_keys, sidecar_model, batch_mode, verbose, print_exceptions, remote_cache_description, remote_inference_description)
    499     cache = Cache()
    501 if not remote_cache:
--> 502     results = self._run_local(
    503         n=n,
    504         debug=debug,
    505         progress_bar=progress_bar,
    506         cache=cache,
    507         stop_on_exception=stop_on_exception,
    508         sidecar_model=sidecar_model,
    509         print_exceptions=print_exceptions,
    510     )
    512     results.cache = cache.new_entries_cache()
    514     self._output(f"There are {len(cache.keys()):,} entries in the local cache.")

File [~/edsl/edsl/jobs/Jobs.py:586](http://localhost:8888/lab/tree/~/edsl/edsl/jobs/Jobs.py#line=585), in Jobs._run_local(self, *args, **kwargs)
    583 def _run_local(self, *args, **kwargs):
    584     """Run the job locally."""
--> 586     results = JobsRunnerAsyncio(self).run(*args, **kwargs)
    587     return results

File [~/edsl/edsl/utilities/decorators.py:62](http://localhost:8888/lab/tree/~/edsl/edsl/utilities/decorators.py#line=61), in jupyter_nb_handler.<locals>.wrapper(*args, **kwargs)
     59 if loop.is_running():
     60     # If the loop is running, schedule the coroutine and wait for the result
     61     future = asyncio.ensure_future(async_wrapper(*args, **kwargs))
---> 62     return loop.run_until_complete(future)
     63 else:
     64     # If the loop is not running, run the coroutine to completion
     65     return asyncio.run(async_wrapper(*args, **kwargs))

File [~/edsl/.venv/lib/python3.11/site-packages/nest_asyncio.py:98](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/nest_asyncio.py#line=97), in _patch_loop.<locals>.run_until_complete(self, future)
     95 if not f.done():
     96     raise RuntimeError(
     97         'Event loop stopped before Future completed.')
---> 98 return f.result()

File [~/.pyenv/versions/3.11.7/lib/python3.11/asyncio/futures.py:203](http://localhost:8888/lab/tree/~/.pyenv/versions/3.11.7/lib/python3.11/asyncio/futures.py#line=202), in Future.result(self)
    201 self.__log_traceback = False
    202 if self._exception is not None:
--> 203     raise self._exception.with_traceback(self._exception_tb)
    204 return self._result

File [~/.pyenv/versions/3.11.7/lib/python3.11/asyncio/tasks.py:277](http://localhost:8888/lab/tree/~/.pyenv/versions/3.11.7/lib/python3.11/asyncio/tasks.py#line=276), in Task.__step(***failed resolving arguments***)
    273 try:
    274     if exc is None:
    275         # We use the `send` method directly, because coroutines
    276         # don't have `__iter__` and `__next__` methods.
--> 277         result = coro.send(None)
    278     else:
    279         result = coro.throw(exc)

File [~/edsl/edsl/utilities/decorators.py:55](http://localhost:8888/lab/tree/~/edsl/edsl/utilities/decorators.py#line=54), in jupyter_nb_handler.<locals>.async_wrapper(*args, **kwargs)
     52 @functools.wraps(func)
     53 async def async_wrapper(*args, **kwargs):
     54     # This is an async wrapper to await the coroutine
---> 55     return await func(*args, **kwargs)

File [~/edsl/edsl/jobs/runners/JobsRunnerAsyncio.py:315](http://localhost:8888/lab/tree/~/edsl/edsl/jobs/runners/JobsRunnerAsyncio.py#line=314), in JobsRunnerAsyncio.run(self, cache, n, debug, stop_on_exception, progress_bar, sidecar_model, print_exceptions)
    313         shared_globals["edsl_runner_exceptions"] = task_history
    314         print(msg)
--> 315         task_history.html(cta="Open report to see details.")
    316         print(
    317             "Also see: https://docs.expectedparrot.com/en/latest/exceptions.html"
    318         )
    320 return results

File ~/edsl/edsl/jobs/tasks/TaskHistory.py:299, in TaskHistory.html(self, filename, return_link, css, cta)
    238 template = Template(
    239     """
    240 <!DOCTYPE html>
   (...)
    295 """
    296 )
    298 # Render the template with data
--> 299 output = template.render(
    300     interviews=self._interviews,
    301     css=css,
    302     performance_plot_html=performance_plot_html,
    303 )
    305 # Save the rendered output to a file
    306 with open("output.html", "w") as f:

File [~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py:1304](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py#line=1303), in Template.render(self, *args, **kwargs)
   1302     return self.environment.concat(self.root_render_func(ctx))  # type: ignore
   1303 except Exception:
-> 1304     self.environment.handle_exception()

File [~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py:939](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py#line=938), in Environment.handle_exception(self, source)
    934 """Exception handling helper.  This is used internally to either raise
    935 rewritten exceptions or return a rendered traceback for the template.
    936 """
    937 from .debug import rewrite_traceback_stack
--> 939 raise rewrite_traceback_stack(source=source)

File <template>:23, in top-level template code()

File [~/edsl/edsl/questions/QuestionBase.py:476](http://localhost:8888/lab/tree/~/edsl/edsl/questions/QuestionBase.py#line=475), in QuestionBase.html(self, scenario, include_question_name, height, width, iframe)
    468     question_content = Template("")
    470 base_template = Template(base_template)
    472 params = {
    473     "question_name": self.question_name,
    474     "question_text": Template(self.question_text).render(scenario),
    475     "question_type": self.question_type,
--> 476     "question_content": Template(question_content).render(scenario),
    477     "include_question_name": include_question_name,
    478 }
    479 rendered_html = base_template.render(**params)
    481 if iframe:

File [~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py:1304](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py#line=1303), in Template.render(self, *args, **kwargs)
   1302     return self.environment.concat(self.root_render_func(ctx))  # type: ignore
   1303 except Exception:
-> 1304     self.environment.handle_exception()

File [~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py:939](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py#line=938), in Environment.handle_exception(self, source)
    934 """Exception handling helper.  This is used internally to either raise
    935 rewritten exceptions or return a rendered traceback for the template.
    936 """
    937 from .debug import rewrite_traceback_stack
--> 939 raise rewrite_traceback_stack(source=source)

File <template>:4, in top-level template code()

File [~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py:487](http://localhost:8888/lab/tree/~/edsl/.venv/lib/python3.11/site-packages/jinja2/environment.py#line=486), in Environment.getattr(self, obj, attribute)
    483 """Get an item or attribute of an object but prefer the attribute.
    484 Unlike :meth:`getitem` the attribute *must* be a string.
    485 """
    486 try:
--> 487     return getattr(obj, attribute)
    488 except AttributeError:
    489     pass

UndefinedError: 'q1' is undefined

It also does not work to call list items in another question_text:
from edsl import QuestionList, QuestionFreeText, Survey

q1 = QuestionList(
    question_name = "q1",
    question_text = "What are your 3 favorite colors?",
    max_list_items = 3
)
q2 = QuestionFreeText(
    question_name = "q3",
    question_text = """Which color is your #1 favorite:
    {{ q1.answer[0] }} or {{ q1.answer[1] }} or {{ q1.answer[2] }}"""
)

survey = Survey([q1,q2])

results = survey.run()
results.select("q1","q2").print(format="rich")

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
File [~/edsl/edsl/results/Results.py:446](http://localhost:8888/lab/tree/~/edsl/edsl/results/Results.py#line=445), in Results._parse_column(self, column)
    445 try:
--> 446     data_type, key = self._key_to_data_type[column], column
    447 except KeyError:

KeyError: 'q2'

During handling of the above exception, another exception occurred:

ResultsColumnNotFoundError                Traceback (most recent call last)
Cell In[4], line 2
      1 results = survey.run()
----> 2 results.select("q1","q2").print(format="rich")

File [~/edsl/edsl/results/Results.py:722](http://localhost:8888/lab/tree/~/edsl/edsl/results/Results.py#line=721), in Results.select(self, *columns)
    719 # iterate through the passed columns
    720 for column in columns:
    721     # a user could pass 'result.how_feeling' or just 'how_feeling'
--> 722     parsed_data_type, parsed_key = self._parse_column(column)
    723     data_types = get_data_types_to_return(parsed_data_type)
    724     found_once = False  # we need to track this to make sure we found the key at least once

File [~/edsl/edsl/results/Results.py:459](http://localhost:8888/lab/tree/~/edsl/edsl/results/Results.py#line=458), in Results._parse_column(self, column)
    455             raise ResultsColumnNotFoundError(
    456                 f"Column '{column}' not found in data. Did you mean: {suggestions}?"
    457             )
    458         else:
--> 459             raise ResultsColumnNotFoundError(
    460                 f"Column {column} not found in data"
    461             )
    462 return data_type, key

ResultsColumnNotFoundError: Column q2 not found in data

Hint to self:
options are only being rendered w/ the scenario, not piped answers.
File "/Users/john/tools/edsl/edsl/questions/QuestionMultipleChoice.py", line 54, in <listcomp>
    Template(str(option)).render(scenario) for option in self.question_options

More hints - probably fix at this line in 'Invigilators'
answer = question._translate_answer_code_to_answer(response["answer"], scenario)

At the breakpoint:
(Pdb) self.current_answers
{'q1': ['Blue', 'Green', 'Red'], 'q1_comment': 'These colors are widely appreciated for their depth and versatility.'}
(Pdb) self.question
Question('multiple_choice', question_name = """q3""", question_text = """Which color is your #1 favorite?""", question_options = ['{{ q1.answer[0] }}', '{{ q1.answer[1] }}'], model_instructions = {})
(Pdb) self.question.question_options
['{{ q1.answer[0] }}', '{{ q1.answer[1] }}']
(Pdb)


Android Activity Result API

I've added two tags:

v1.9.0 - Where I just added the new Result API
v1.9.1 - Where I removed all startActivityForResultcalls and https://github.com/florent37/InlineActivityResult dependency


too much options for crafting

cant see item descr cos of too much lavels of furnace

Yes there is a problem since 2.0, in 1.1 we could set the hidden flag that was removed. If i set the entity to hidden now the upgrade planner breaks. So this is the way it is at the moment since it is the lesser of two problems


added B in line 11 on the file handlers_test.go

Branch Dev is deleted and handlers_test.go is updated by adding bbbb in line 11


Installing Wallet Archive Creates Extra Account

Describe the bug
When installing an archive version of wallet (while having most up to date version with at least one account) the user can se an extra account in the account dropdown with no name associated.
To Reproduce
Steps to reproduce the behavior:

Delete Current Wallet
Copy and paste link to download a Wallet archive
Go through install flow & open wallet
See extra account

Screenshots

MassaStation version
v0.2.6
Desktop (please complete the following information):

OS: Mac OS
Browser Firefox

Additional context
When clicking on the profile the user is redirected to user page

It seems that there was a mismatch between my build an release accounts, I am not encountering this bug anymore

It might be fixed here https://github.com/massalabs/station-massa-wallet/issues/623

I haven't encountered it any more, so I will close


[Bug]: Fider makes the SMTP username all lowercase after saving the configuration

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When I create a Fider service, it makes the SMTP username all lowercase after saving the configuration. If you use AWS SES you most likely have an username all capital case.
Workaround
After saving, Override EMAIL_SMTP_USERNAME env variable of Fider with your username and only then  start your service
Steps To Reproduce

Create a Fider service
Type SMTP credentials
Save
Would not work sending emails

Version
3.1.4

Found the issue! Will be fixed in the next version!


cloud-init notification API

This adds http streaming support to the /1.0/events endpoint of devlxd. Clients can be notified about events without having to use websockets.

jenkins: test this please

jenkins: test this please

Actually to be more accurate, I believe we want what's referred to as http streaming here.
That uses a header to indicate that the response will be chunked and allows for a long lasting connection which gets more data overtime. Very similar to websocket, just without all of the fanciness, encoding and message type features of websocket.

@monstermunchkin please could you add a PR description and link to design doc (if relevant)? thanks

@monstermunchkin rather than collecting events into memory, shouldn't this API just behave like the websocket event stream, but simplified as http streaming (i.e only delivering the events that occur after the connection is made)? I'm not clear why this PR is saving events into memory.

jenkins: test this please

Looks like there is some weird rebasing issues as I see NewWebsocketListenerConnection added in multiple commits.

jenkins: test this please

Confirmed that all of @tomponline feedback was addressed. Rebased on master and going to do another quick review now.


Map old permalinks

Pages should be mapped by perma links, the perma link is based on the title. If the title changes, a new perma link should be generated. In this case, the old perma link should continue to work. Therefore a mapping must exist.

With the versioning system of page translations, this is no longer an issue. As we create a new version whenever we change the slug of a page translation, we can just perform a simple database access and query for the translation with the given slug and return the most recent version of it.

I just noticed that I confused two things here: Yes, the slugs of the translations are stored automatically and we don't need any additional mapping for it, but in case we change the structure of the pages (e.g. move a page to another parent page), the permalink will change and we currently don't track that.
So I think that this is a non-trivial issue to solve and revise my comment above.

So what we need is two models: PageTranslationPermalinkMap and EventTranslationPermalinkMap, with each having an string attribute permalink and a foreign key to existing page or event translations. Right?

If we really need a permalink storage, yes. But I thought the current status of our Slack discussion was that we don't.
Since we store old slugs in the translation model (just in old revisions), the only reason we would need the storage is to track the hierarchy-changes of pages. But we can as well ignore them and just take the last URL parameter of the path as slug. The worst thing that can happen is that we map a permalink which never existed to an existing page (e.g. /augsburg/de-de/non-existent/welcome). But I see no downside for the real use case here and would prefer less models and a slimmer database structure.

@timoludwig does mapping old slugs for page translations already work? If yes, we can close this issue.

Yes, you can always do:
old_revision = PageTranslation.objects.filter(slug="old-page-translation-slug").first()
new_revision = region.pages.get(id=old_revision.page.id).get_translation(old_revision.language.code)

or:
page = region.pages.filter(translations__slug="old-page-translation-slug").distinct().first()


copr: add more assert in compare_in test

What have you changed?
Related to #6000 optimization, a simple and hidden bug #6093 is introduced in the last round of review and broke the optimization, but the test still pass.
The bug is fixed in #6093, and this PR improve the test to ensure the optimization is effective.
What is the type of the changes?
Pick one of the following and delete the others:

Improvement (a change which is an improvement to an existing feature)

How is the PR tested?
Please select the tests that you ran to verify your changes:

Unit test

@breeswish @sticnarf PTAL

/merge


#3159 Added new get started guide

Relates to https://github.com/dagger/dagger/issues/3159
Note: This draft will change as the API changes.

@vikram-dagger I think the markdown error is valid, here is how it renders locally:

And on the netlify deploy (production build):

I assume you're looking for the latter, which means removing the indentation.

@jpadams right now, Vikram has a placeholder for extensions, but we were discussing that it needs to be linked to the universe somehow. Should he keep that section as a placeholder or should we assume that the extension section will point to the universe experience?

@jpadams right now, Vikram has a placeholder for extensions, but we were discussing that it needs to be linked to the universe somehow. Should he keep that section as a placeholder or should we assume that the extension section will point to the universe experience?

My plan here would be to generate the extension pages and their contents automatically as follows:

have a machine-readable file (which could come from the universe system) containing the list of extensions and their source repos
each source repo would include an example file (and maybe others) in a standard form
the docs system would have a script/plugin that would read this information and produce one page for each extension with the relevant content

Open to further ideas on this. Ideally, we don't want to custom-craft these extension pages but rather have them auto-generated, similar to the API reference.

@vikram-dagger I think the markdown error is valid, here is how it renders locally:

I don't see this in my local render. It looks like the netlify version when I render locally. Not sure if you were looking at an older commit (I had a similar error before but I fixed it).

And on the netlify deploy (production build):
I assume you're looking for the latter, which means removing the indentation.

When I remove indentation, the linter returns a different error
docs/get-started/bvtz9-get-started.md:126:1 MD007/ul-indent Unordered list indentation [Expected: 0; Actual: 2]
docs/get-started/bvtz9-get-started.md:127:1 MD007/ul-indent Unordered list indentation [Expected: 0; Actual: 2]
docs/get-started/bvtz9-get-started.md:128:1 MD007/ul-indent Unordered list indentation [Expected: 0; Actual: 2]

@vikram-dagger I think the markdown error is valid, here is how it renders locally:

I don't see this in my local render. It looks like the netlify version when I render locally. Not sure if you were looking at an older commit (I had a similar error before but I fixed it).

And on the netlify deploy (production build):
I assume you're looking for the latter, which means removing the indentation.

@samalba When I remove indentation for the list, the linter passes but the list numbering gets reset so that step 4 of the section is renumbered as 1. The indentation of the list items is also not correct in the render, as they should be indented under the ``Let's break this query...` line.

IMO The correct approach is to have the items under Let's break this query... indented 2 levels as they are a sub-list within the main list. When done in this way, the sub-list renders correctly and the numbering for step 4 is also retained.

However the linter throws the error docs/get-started/bvtz9-get-started.md:126 MD046/code-block-style Code block style [Expected: fenced; Actual: indented]
Open to any ideas to correct this.

Closing this as we plan to start with a guide based on Go initially.


[WIP] Stride Diagnostics Analyzer

PR Details
Based on Manios base generator.
Has the Analyzers in it to scan Code during Compile time against serializer rule violations
Description
Adds Analyzers.
Stride Compilerservices
Analyzers for DataSerializer Source generator and Yaml Serializer
Related Issue
#1835
Motivation and Context
It solves the issue that you get surprised when you open Game Studio and you don't see anything Exported
Also it offers validation for other generators so they dont have to check the same errors
Base Architecture checks for future source generators
Types of changes

[ ] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist

[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

delegate check doesnt work at all

fix serialization
i didnt want that here.. wil lremove it

made an upsi with git... will be back open soon :D

i hope my merge didnt break anyhting , im not really sure , could someone check it?

for some reason, including roslyn this way it doesnt create a conflict in the versioning and everything is fine, ican build stride without problems

for some reason, including roslyn this way it doesnt create a conflict in the versioning and everything is fine, ican build stride without problems

Was there an issue with the previous Roslyn version?

i have added now STRDIAG001 , dont have yet a test for it
also i want to add only primitive types for dictionaries analyzer

also im not sure how to make it with the websites for the error links, probably its best to have them ready when this gets merged so no questions arise
also eiderens pr has to get merged first else i give suggestions that dont work

The websites for the diagnostics are being worked on by vaso to cleanup grammar
After that i have to test the links, then if with the rest since the last review is fine it should be ready

is ready

I'll let @manio143 merge this one given I haven't followed the particularities of this PR


Fix: Fix possible Null Pointer Exception

Summary

In PublicKeyFactory Line 108, SubjectPublicKeyInfo.getInstance method could return null and make PublicKeyFactory Line 148 throws a NullPointerException.
From InputStream javadoc, we see that if the end of the stream is reached, it will return -1. Which means that if an empty byte array is provided, the tag will be -1 and it will return null in ASN1InputStream. In this case, it will trigger the null pointer exception above. Thus this fix adds an additional checking to ensure the PEM content is not an empty array.
Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=57247
Release Note

Documentation

@vlsi, I believe there is a sufficient description to describe the issue. The title is aligned with the problem.

@loosebazooka , we should not add arbitrary checks. Is there anything in ASN1Sequence.getInstance that says “empty byte array must not be passed there”?
If empty array triggers issues, it should be documented and tested at bc-java level, and we should not add those checks at random in sigatore-java.
Then, I do not like to merge changes without corresponding tests.
The PR add no tests, so it is possible that someone would remove the “useless” check tomorrow in a different PR.

I mean I agree here, this is a bouncy castle issue, but it still causes crashes in our code.
I believe oss-fuzz caches issues that cause crashes and you can repeat those against the proejct (is this right @arthurscchan ?) So if these were removed, oss-fuzz would catch it.

@loosebazooka Indeed, this could be reproducible.

@arthurscchan can you elaborate or point to the docs on how reproducing works for ossfuzz, it might also make sense to just bake these test cases into our testsuite anyway.

In general, the oss-fuzz tool provides function to reproduce testcase, see https://google.github.io/oss-fuzz/advanced-topics/reproducing/#reproduce-using-local-source-checkout.
The testcase that cause the problem could find in the bug page.

In general, the oss-fuzz tool provides function to reproduce testcase, see https://google.github.io/oss-fuzz/advanced-topics/reproducing/#reproducing-bugs The testcase that cause the problem could find in the bug page.

In addition to this, we also added some documentation here: https://github.com/sigstore/sigstore-java/blob/main/DEVELOPMENT.md#reproduce-oss-fuzz-crash
To reproduce this crash:
git clone https://github.com/google/oss-fuzz
cd oss-fuzz
python3 infra/helper.py build_fuzzers sigstore-java
# From this page: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=57247
# download `Reproducer Testcase: https://oss-fuzz.com/download?testcase_id=5658600826863616` to the current folder
python3 infra/helper.py reproduce sigstore-java KeysFuzzer ./clusterfuzz-testcase-minimized-KeysFuzzer-5658600826863616

I think it still makes sense to include a testcase in KeysTest.java to document this behavior. The relationship between ossfuzz and this project is not guaranteed to be transferable. Anyone forking this project or keeping a private copy should be allowed the benefit of a full testsuite.

I think it still makes sense to include a testcase in KeysTest.java to document this behavior

@arthurscchan can you do this?

The bug has nothing to do with sigstore-java, and the bug belongs to bc-java. If we commit a workaround, there should be a reference to bc-java issue, so we could drop the workaround once bc-java issue is resolved

Sure, we can link to https://github.com/bcgit/bc-java/issues/1370 for now.


Multiple consumer groups in same process

It would be a nice to have feature to be able to consume the same Kafka topic multiple times from within the same process (using multiple consumer groups). At the moment it’s not really feasible because all subscribers would be triggered every time a message is consumed but either group.
It’s maybe possible to do this already, subscribing to the InboundMessage instead and manually filtering according to the endpoint properties, but a more convenient way would be welcomed.

Duplicates #59


client-library-check.sh fails

The consolidation of build configs: https://github.com/googleapis/java-spanner/pull/2865 is causing the downstream client-library-check.sh to fail (currently failing for java-spanner and java-pubsub as those repos have had the change implemented).
This is because the downstream check replaces the google-cloud-shared-config artifact in the pom.xml and checks that it compiles. However, the consolidation of the build configs removes the google-cloud-shared-config artifact from the pom.xml so the test has nothing to replace. The tests will need to be reworked to account for this build config change.

Fixed with https://github.com/googleapis/java-shared-config/pull/746


Make soft text wrapping easier discoverable

We are receiving regular questions about how to enable soft text wrapping. See also the discussion in #342.

Open Settings and add  "editor.wrappingColumn": 0 .

CC @Tyriar

:+1:
https://github.com/Microsoft/vscode/issues/324 is the issue with the discussion

How are you guys thinking thinking this would be implemented? Would this menu item to toggle soft wrap (referenced from #324) only affect the currently opened document? Besides that, the only other thing I think you can do is to directly modify the user's settings.json file.
Regarding discoverability (with no disrespect or condescension intended), the typical way to modify settings in Code is with the settings.json file. If I were looking for a setting to wrap text, that's where I would look first.

Personally I'd want it exposed through the view menu and potentially with a hotkey (something like ctrl(+shift?)+w). I would also want it to just affect the present file until it's closed or removed from working files.

Makes sense.. user settings are applied globally, but line wrapping is something that perhaps most people would only want to enable temporarily, and only on a specific file. What you suggested would accomplish that.

I would also like to see this. Sometimes you want to quickly toggle this on and off. It makes sense to have a default setting but similar to how you can quickly switch between spaces/tabs now, a wrapping icon would make sense. For example, in Markdown / plain text I mostly want wrapping, while in code I don't like it.

There is an action to toggle word wrap in the View menu and there is a short cut - closing.

lol totally overlooked that


qt5: 5.15.0 -> 5.15.1

Motivation for this change
New upstream version.
Closes #100041.
Things done

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

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

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

I didn't try to build everything that depends on qt, but I don't expect much breakage since this is just a point release.

KDE frameworks package purpose fails and thereby the application okular as well.
builder for '/nix/store/v1k26dcl0wnpj571a7isx38sn694hrx0-purpose-5.73.0.drv' failed with exit code 2; last 10 log lines:
     96 |         const auto socketError = m_socket.socketError();
        |                                           ^~~~~~~~~~~
        |                                           LocalSocketError
  /build/purpose-5.73.0/src/externalprocess/purposeprocess_main.cpp: In function 'int main(int, char**)':
  /build/purpose-5.73.0/src/externalprocess/purposeprocess_main.cpp:136:76: note: #pragma message: warning: make QGuiApplication, consider QCoreApplication?
    136 | #pragma message("warning: make QGuiApplication, consider QCoreApplication?")
        |                                                                            ^
  make[2]: *** [src/CMakeFiles/purposeprocess.dir/build.make:95: src/CMakeFiles/purposeprocess.dir/externalprocess/purposeprocess_main.cpp.o] Error 1
  make[1]: *** [CMakeFiles/Makefile2:671: src/CMakeFiles/purposeprocess.dir/all] Error 2
  make: *** [Makefile:149: all] Error 2

Rebuilding my system now with this update based on top of https://github.com/NixOS/nixpkgs/pull/101369.

It probably closes #98009 too.

@gebner could you please add the patch I wanted to add in https://github.com/NixOS/nixpkgs/pull/100041 ?
See also: https://github.com/NixOS/nixpkgs/pull/99456#issuecomment-703523943 .

@doronbehar The patch is already included.

https://github.com/NixOS/nixpkgs/commit/ffe65c35874e175abac6619f2563ff4db0291e1f is needed for kpurpose.

It seems this one doesn’t #98009. Am I testing this correctly? It took a while before everything compiles.

nix-shell -E 'let pkgs=import (fetchTarball {url="https://github.com/NixOS/nixpkgs/archive/5856b4c99356e63119daa14f01626891b03af539.tar.gz";}) {}; in pkgs.mkShell {buildInputs = [pkgs.vlc];}' --run vlc

nix-shell -E 'let pkgs=import (fetchTarball {url="https://github.com/NixOS/nixpkgs/archive/5856b4c99356e63119daa14f01626891b03af539.tar.gz";}) {}; in pkgs.mkShell {buildInputs = [pkgs.audacious pkgs.vlc];}' --run audacious

@unclechu
As I told you before, vlc is forcefully built with 5.14
vlc = libsForQt514.callPackage ../applications/video/vlc {};
This PR just bumps Qt 5.15, nothing more

First I applied a patch made of #102594 on top of nixos-unstable, it fixed dark theme for vlc and psi-plus for me but not audacous. Then I applied also this PR:
(set -eo pipefail && curl --fail -Ls https://github.com/NixOS/nixpkgs/pull/102216.patch | git apply)

And this also fixed audacious for me.

I rebuilt the system by this command (while being in a directory of nixpkgs repository):
sudo nixos-rebuild switch -I nixpkgs="$PWD"

I didn’t test this MR without #102594 yet.

I tested this PR separately and it only fixed audacious for me, vlc and psi-plus were still having light theme. So both #102594 and #102216 to fix Adwaita Dark for Qt applications.

Thanks for your report @unclechu, very appreciated.

This should go into nixos 20.09 or better #104448 since it got more bugfixes as well.

I'm going to close this in favor of #106118. We should consolidate our efforts there, as it is the most complete pull request in the Qt 5.15.2 series.


dragon spawns far into space

Description
title, space dragon frequently spawns quite far from the station which can lead to it not finding it
currently this is mostly countered by deadchat collectively looking for the station and telling where dragon should go
Reproduction

wait for it to dragon
look at spawn location

Check the message you get when spawning as dragon.

Check the message you get when spawning as dragon.

i don't think it's quite clear enough because i just watched a dragon get lost, on wizden

Secondary issue related to this, the Dragon can spawn where a salv magnet wreck is, readjusting their camera and making it impossible to find their way back to station. Also when it disappears, your portals and orientation reset, meaning you’re on a time limit to find the station until you die

Give the dragon an action similar to Handheld Mass Scanner, with the name Echolocation, and call it a day.


Implementation for Terraform All-in-One deployment

Added a new folder called All-in-One from which all 4 steps (03-Network-Hub, 04-Network-LZ, 05-AKS-Supporting and 06-AKS-Cluster) are deployed as modules in just one template.
The changes are beneficial because it simplifies the deployment process and reduces the number of steps required to deploy the infrastructure.
I've changed the config of the existing templates, added input variables that takes the resource ID from the resources created in previous modules.

Do we have a test run of this running successfully?

@asalbers let me know if you have any issues running this ?


npm install is taking forever

Why is it taking so much time? This is all I get-
mihirk@mihirk-hp:~/commonDemo$ npm install --save react-native-facebook-login
loadRequestedDeps -> netw / |##########-----------------------------------------------------|

Well, after waiting for eternity, it worked.


Refactor representation handling in DebugEvaluationResult

Instead of hardcoded flags selecting one of the three implementations, DebugSession.EvaluateAsync and all its wrappers now take repr function as an expression. Factories for such functions are provided for all the previous options.

:+1:


[CHALLENGE SUBMISSION] day 17

Please provide the following information for your submission:
What is your name? (First, Last)
Barbara Forbes
Where is your GitHub Repo ?(With your challenge solution)
https://github.com/Ba4bes/25daysofserverless/tree/master/Daya17BBQontheBeach
What Challenge is this for? (Challenge number between 1 and 25)
17
(Optional) Anything else we should know? e.g., language used, location, blog post?
PowerShell Function App with Azure IOT Hub.
Didn't want to create a developers account in Twitter (or have time to wait for that), so I made an output to Teams instead.
(If I wanted to send out a tweet, I would have used a logic app though, seems easier :) )

From all of us on the Cloud Advocacy team at Microsoft, thank you for creating this issue!
Have a Happy Holiday season!
Feel free to share your solution on Twitter with the tag #25DaysOfServerless


[Feature] IPv6 support

Hi, this is already being tracked in discovery-swarm in this issue.

Duplicate of https://github.com/mafintosh/discovery-swarm/issues/45


Fix ehpa document yaml field

What type of PR is this?
fix
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

/LGTM


How to test build.prod generated code

Hi
How to test or view 'npm run build.prod' generated code ?
Thank you

I have added  script for 'npm prod' and pull request.
pull request


Second level cache over two projects

Hello,
lets say there are 3 project, Backend, Frontend and a Business Layer. Backend and Frontend are both a Website in the IIS with different App pools which talks with the same business layer. (The DbContext is injected with Ninject)
Is there any strategy to clear the cache in the Backend but also removes the cache from the Frontend? Let say in the backend a user saves something and with e.g. QueryCacheManager.ExpireAll(); the cached is cleared but only in the Backend not Frontend.
PS: i know this is more a generall problem but not a Entity Framework plus problem but i would really appreciate idea or strategy if something like this is possible
thx simon

Hello @SimonHostettler ,
Your requirement look like to be a distributed cache.
Honestly, I never used a distributed cache so I'm probably not the right person to give you the right direction.
I believe Redis and NCache are some popular caching for it.
Let me know if that answer correctly to your question.
Best Regards,
Jonathan

Hello Jonathan,
thx for the answer, i think thats excactly the key word "distributed cache".  Ill start looking into that.


mp3 each browser return differnt mime type

Today I encounter a strange behavior about matching mp3 mime type with browser return ContentType
and I have search an article: Which mime type should I use for mp3
Found out that each browser return different ContentType
if (!audio.ContentType.Equals(MimeTypeMap.GetMimeType(".mp3")))
{
    ViewBag.alert = "Incorrect，only accept *.mp3";
    return View(data);
}

using chrome will not be able to upload mp3 file

Mime types are unfortunately not 100% standard, even ones that are standard, not everyone follows the same standards. You can't assume that the mime type used in one place will match the exact mime type used elsewhere for the same files. Particularly look at the link you posted which shows some browsers using application/octet-stream which is a generic catch-all mime-type for binary even though zip is a well known file type.
Slightly better would be to check the file extension of the file uploaded, assuming it was provided. That should be .mp3. It's not fully safe though.. the user could rename any file to .mp3 to upload so you need to be aware of that depending on what you're later doing with the file.
Best would be to validate the contents of the upload are in fact an .mp3 audio. Example: http://stackoverflow.com/questions/7302439/how-can-i-determine-that-a-particular-file-is-in-fact-an-mp3-file
Good luck.


[move-meta] file in output\temp not found // refs to ditamaps with relative paths unstable

Hi all,
we are using DITA to build documents with more than 1000 pages and about 8 levels of chapter depth.
Changes to these documents are summarised in additional smaller documents which points to the corresponding positions, which are to be changed, in the main documents using maprefs.
Since we changed the DITA-OT Version from 1.5.1 to 2.4.4 we encoutered the following problem.
In our case a reference might look like this:

<topichead navtitle="04_subSubChapter">
    <mapref href="../../../../mainDocuments/mainDocument_1/01_chapter/04_subChapter/04_subWorkflows/08_subSubSubChapter/08_Description/_08_Description.ditamap" />
</topichead>

such a reference causes the following warning and error messages

[DITA-OT]     [chunk] Processing file:/C:/DEV/Repo/testDoc/Output/temp/sideDocument_1.ditamap
[DITA-OT] [job-helper] Processing C:\DEV\Repo\testDoc\Output\temp\.job.xml to C:\DEV\Repo\testDoc\Output\temp\fullditatopic.list
[DITA-OT] [job-helper] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\job-helper.xsl
[DITA-OT] [job-helper] Processing C:\DEV\Repo\testDoc\Output\temp\.job.xml to C:\DEV\Repo\testDoc\Output\temp\fullditamap.list
[DITA-OT] [job-helper] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\job-helper.xsl
[DITA-OT] [job-helper] Processing C:\DEV\Repo\testDoc\Output\temp\.job.xml to C:\DEV\Repo\testDoc\Output\temp\fullditamapandtopic.list
[DITA-OT] [job-helper] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\job-helper.xsl`
[DITA-OT] [job-helper] Processing C:\DEV\Repo\testDoc\Output\temp\.job.xml to C:\DEV\Repo\testDoc\Output\temp\resourceonly.list
[DITA-OT] [job-helper] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\job-helper.xsl`
[DITA-OT] [job-helper] Processing C:\DEV\Repo\testDoc\Output\temp\.job.xml to C:\DEV\Repo\testDoc\Output\temp\copytosource.list
[DITA-OT] [job-helper] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\job-helper.xsl`
[DITA-OT] move-meta-entries:
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/sideDocument_1.ditamap
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/07_subDescription/_07_subDescription-main.dita
[DITA-OT] [move-meta] File C:\DEV\Repo\testDoc\Output\temp\08_subDescription\08.dita was not found.
[DITA-OT] [move-meta] File C:\DEV\Repo\testDoc\Output\temp\07_subDescription\07.dita was not found.
[DITA-OT] [move-meta] File C:\DEV\Repo\testDoc\Output\temp\08_subDescription\08.dita was not found.
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/02_subDescription/02.dita
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/04_subChapter/04_subWorkflows/08_subSubSubChapter/08_Description/16_subDescription/16.dita
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/08_subDescription/_08_subDescription-main.dita
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/03_subChapter/03_subWorkflows/06_subSubSubChapter/06_Description/12_subDescription/12.dita
[DITA-OT] [move-meta] Processing file:/C:/DEV/Repo/testDoc/Output/temp/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/01_subDescription/_01_subDescription-main.dita

...

  [DITA-OT] [move-meta] Loading stylesheet C:\DEV\Repo\testDoc\Tooling\DITA-OT\xsl\preprocess\mappull.xsl
  [DITA-OT] [move-meta] File C:\DEV\Repo\testDoc\Output\temp\07_subDescription\07.dita was not found.
  [DITA-OT] [move-meta] Recoverable error on line 62 of mappullImpl.xsl:
  [DITA-OT] [move-meta]   FODC0002: java.io.FileNotFoundException:
  [DITA-OT] [move-meta]   C:\DEV\Repo\testDoc\Output\temp\07_subDescription\07.dita (Das System kann den
  [DITA-OT] [move-meta]   angegebenen Pfad nicht finden)
  [DITA-OT] [move-meta] file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/07_subDescription/_07_subDescription.ditamap:5:56: [DOTX023W][WARN]: Unable to retrieve navtitle from target: ' 07_subDescription/07.dita '.
  [DITA-OT] [move-meta] file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/07_subDescription/_07_subDescription.ditamap:5:56: [DOTX027W][WARN]: Unable to retrieve linktext from target: ' 07_subDescription/07.dita '.
  [DITA-OT] [move-meta] Recoverable error on line 62 of mappullImpl.xsl:
  [DITA-OT] [move-meta]   FODC0002: java.io.FileNotFoundException:
  [DITA-OT] [move-meta]   C:\DEV\Repo\testDoc\Output\temp\08_subDescription\08.dita (Das System kann den
  [DITA-OT] [move-meta]   angegebenen Pfad nicht finden)
  [DITA-OT] [move-meta] file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/08_subDescription/_08_subDescription.ditamap:5:56: [DOTX023W][WARN]: Unable to retrieve navtitle from target: ' 08_subDescription/08.dita '.
  [DITA-OT] [move-meta] file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/08_subDescription/_08_subDescription.ditamap:5:56: [DOTX027W][WARN]: Unable to retrieve linktext from target: ' 08_subDescription/08.dita '.
  [DITA-OT] maplink-check:
  [DITA-OT] maplink:

...

  [DITA-OT] [clean-map] Processing C:\DEV\Repo\testDoc\Output\temp\mainDocuments\mainDocument_1\01_chapter\04_subChapter\04_subWorkflows\08_subSubSubChapter\08_Description\_08_Description.ditamap
  [DITA-OT] [clean-map] Processing C:\DEV\Repo\testDoc\Output\temp\mainDocuments\mainDocument_1\01_chapter\01_subChapter\01_subWorkflows\01_subSubSubChapter\01_Description\_01_Description.ditamap
  [DITA-OT] [clean-map] Processing C:\DEV\Repo\testDoc\Output\temp\mainDocuments\mainDocument_1\01_chapter\03_subChapter\03_subWorkflows\06_subSubSubChapter\06_Description\11_subDescription\_11_subDescription.ditamap
  [DITA-OT] [topic-merge] [DOTX008E][ERROR] File 'file:/C:/DEV/Repo/testDoc/Output/temp/07_subDescription/07.dita' does not exist or cannot be loaded.
  [DITA-OT] [topic-merge] [DOTX008E][ERROR] File 'file:/C:/DEV/Repo/testDoc/Output/temp/08_subDescription/08.dita' does not exist or cannot be loaded.
  [DITA-OT] [clean-map] Processing C:\DEV\Repo\testDoc\Output\temp\mainDocuments\mainDocument_1\01_chapter\03_subChapter\03_subWorkflows\06_subSubSubChapter\06_Description\_06_Description.ditamap
  [DITA-OT] [clean-map] Processing C:\DEV\Repo\testDoc\Output\temp\mainDocuments\mainDocument_1\01_chapter\01_subChapter\01_subWorkflows\01_subSubSubChapter\01_Description\01_subDescription\_01_subDescription.ditamap

These errors occur depending on the deepness of the relative path
It seems to be related to the fact, that the references are outside the ditamap folder
https://www.oxygenxml.com/doc/versions/18.1/ug-editor/topics/dita-ot-external-refs.html
A testcase reproducing the mentioned errors and resembling the hierarchy of our documents is attached.
Is there a workaround to make references with this deepness possible,
or is it planned to make it working?
Greetings
Andreas
testCase.zip

I did not investigated this. Could you please set clean.temp=no and check, if all files are copied correctly to the temp directory? Have you tried changing the parameters outer.control and/or generate.copy.outer, see Common parameters? Does this happen only for topics, that are prefixed with _?

Thanks for the fast answer.
The files are copied correctly into the temp folder, but looking into the copied ditamap of the sideDocument which includes the references, we have seen something strange.
The relative paths inside the copied ditamaps are partially changed.
As a result the .dita files of the mainDocument cannot be found
Here is an example:
The first block is correct, while the second one has changed paths

<topichead class="+ map/topicref mapgroup-d/topichead " navtitle="01_subChapter" xtrf="file:/C:/DEV/Repo/testDoc/Content/sideDocuments/sideDocument_1/01_chapter/01_subChapter/_subChapter-side.ditamap" xtrc="topichead:2;7:39">
    <topichead class="+ map/topicref mapgroup-d/topichead " navtitle="01_subSubChapter" xtrf="file:/C:/DEV/Repo/testDoc/Content/sideDocuments/sideDocument_1/01_chapter/01_subChapter/_subChapter-side.ditamap" xtrc="topichead:3;8:43">
        <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/01_subDescription/_01_subDescription-main.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/_01_Description.ditamap" xtrc="topicref:1;5:93">
            <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/01_subDescription/01.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/01_subDescription/_01_subDescription.ditamap" xtrc="topicref:1;5:56"/>
        </topicref>
        <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/02_subDescription/_02_subDescription-main.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/_01_Description.ditamap" xtrc="topicref:2;8:93">
            <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/02_subDescription/02.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/01_subChapter/01_subWorkflows/01_subSubSubChapter/01_Description/02_subDescription/_02_subDescription.ditamap" xtrc="topicref:1;5:56"/>
        </topicref>
    </topichead>
</topichead>

<topichead class="+ map/topicref mapgroup-d/topichead " navtitle="02_subChapter" xtrf="file:/C:/DEV/Repo/testDoc/Content/sideDocuments/sideDocument_1/01_chapter/01_subChapter/_subChapter-side.ditamap" xtrc="topichead:4;13:39">
    <topichead class="+ map/topicref mapgroup-d/topichead " navtitle="02_subSubChapter" xtrf="file:/C:/DEV/Repo/testDoc/Content/sideDocuments/sideDocument_1/01_chapter/01_subChapter/_subChapter-side.ditamap" xtrc="topichead:5;14:43">
        <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/07_subDescription/_07_subDescription-main.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/_04_Description.ditamap" xtrc="topicref:1;5:93">
            <topicref href="07_subDescription/07.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/07_subDescription/_07_subDescription.ditamap" xtrc="topicref:1;5:56"/>
        </topicref>
        <topicref href="../../../../mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/08_subDescription/_08_subDescription-main.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/_04_Description.ditamap" xtrc="topicref:2;8:93">
            <topicref href="08_subDescription/08.dita" class="- map/topicref " type="topic" format="dita" xtrf="file:/C:/DEV/Repo/testDoc/Content/mainDocuments/mainDocument_1/01_chapter/02_subChapter/02_subWorkflows/04_subSubSubChapter/04_Description/08_subDescription/_08_subDescription.ditamap" xtrc="topicref:1;5:56"/>
        </topicref>
    </topichead>
</topichead>

Have you tried changing the parameters outer.control and/or generate.copy.outer
Changing the suggested parameters does not have an effect.

Does this happen only for topics, that are prefixed with _?
No. It happends also to files, which do not have that prefix.

Do you use chunking? Could you please test this again with DITA-OT 2.3.3?

We are not using chunking.
Since are many ways to use it, which kind of chunking do you suggest?

Well, if you don't need chunking, don't use it at all. 😃

Ah ok.
I thought we should try to use it.
Other good ideas? ;)

Good ideas? Unfortunately not. Maybe you could try it with the DITA-OT 2.3.3, this could make it easier to find the bug.

Sure.
May i ask why excatly 2.3.3?

Because <mypersonalopinion>DITA-OT 2.4.x introduced new bugs that may be related to your problem.</mypersonalopinion>

Alright.
I will use version 2.3.3. to build the test case and will give feedback the next days.
Thanks so far.

You're welcome. If that doesn't help and is not extremely urgent, we could debug this together with a 🍺 in Bonn. 😄

To be able to build the document, we changed slightly the folder hierarchy, removing a level of depth.
Just a matter of time how long this temporary solution works.
Your suggestion sounds interesting  :wink:

Alright, feedback comes faster than expected :wink:.
I tried to build the documents with DITA-OT version 2.3.3 and 2.2.5.
It did not work with both.
Starting from 2.1, DITA-OT does not support DITA 1.3 anymore.
As mentioned in the beginning, we did jump from DITA-OT 1.5.1 to 2.4.4.
Not using DITA 1.3 would not be an option for us.
Greetings
Andreas
P.S. the :beer: in Bonn is still valid :wink:

Starting from 2.1, DITA-OT does not support DITA 1.3 anymore.

I don't understand what you mean and I think this is off-topic. Please write me an e-mail or write to the DITA users mailing list to explain what you mean. 😃

We encountered this bug again and we like to share some infos which might help.
It seems to be, that this bug does not only depend on the deepness of the relative path of the referenced ditamap, but also on its content.
This bug occoured now by referencing a .ditamap with low hierarchy including about 10 other ditamaps which again included one ditamap.
Greetings
Andreas


net48

Background
net452 is end of support and is preventing us from getting security patches both in the framework itself and 3rd party libraries.
Results

Fixes https://app.shortcut.com/octopusdeploy/story/12030/target-net-framework-4-8-in-tentacle
Before
<TargetFrameworks>net452;netcoreapp3.1</TargetFrameworks>

After
<TargetFrameworks>net48;netcoreapp3.1</TargetFrameworks>

How to review this PR

Quality :heavy_check_mark:

Pre-requisites

[ ] I have read How we use GitHub Issues for help deciding when and where it's appropriate to make an issue.
[ ] I have considered informing or consulting the right people, according to the ownership map.
[ ] I have considered appropriate testing for my change.

Cloning the tentacle project in teamcity for the net48 build is a bit wonky for some reason. The branch filter doesn't work all the time. Thinking once the PR is ready, we update the main tentacle project in teamcity first to target net48, then get a green build and merge.

I'll post net48 green builds here til we update the main build chain. Here's the current one - https://build.octopushq.com/buildConfiguration/TeamFireAndMotion_OctopusTentacleNet48_SensibleDefaultsChainFullChain/5905429?hideProblemsFromDependencies=false&hideTestsFromDependencies=false

What kind of customer comms are we doing? Does that need to happen before this is merged?

What kind of customer comms are we doing? Does that need to happen before this is merged?

@tothegills I think @octokhor is handling the comms side of things. Given the change of plan, I'll piggyback the net6 changes onto this PR as well so we end up with only 1 major version bump.

Not sure about the best way to update the teamcity build. There are quite a few changes to be made and it's hard to keep track of them. Thinking probably the easiest is to replace the old tentacle project with the new one and make sure everything has the correct names and ids, get a green build and merge.

Latest green build - https://build.octopushq.com/buildConfiguration/TeamFireAndMotion_OctopusTentacleNet48_SensibleDefaultsChainFullChain/5962281?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildChangesSection=true&expandPull+Request+Details=true

It'd be worth creating an Octopus Server branch, updating the Tentacle version and running the Octopus Server test suite.

Main changes

Updated AssemblyExtensions.GetInformationalVersion to return a string? and force the consumer to provide a default, i.e. assembly.GetInformationalVersion() ?? "0.0.0"
Updated Product.wxs to require net48. (Couldn't merge your PR Shane so I've copied your change)
Enabled Ubuntu 22.04 test and added libssl3 to the deb dependencies so that the test is passing
Renamed new Teamcity build to Octopus Tentacle 2022 and updated build ids.

Need to make sure the build number is valid before switching to the new build

Ah yes, the "something else" I was trying to remember in the discussion points from earlier is this PR https://github.com/OctopusDeploy/OctopusTentacle/pull/405. I did the same thing without knowing about it. Seeing there's an ongoing discussion in the other PR this could change, which we can do afterwards.


Support path-dependent payoffs

Rough plan: (will enrich to give more context on design)

[ ] build out exotic engine (more info to come)
[ ] add simple path-dependent payoffs - e.g. knock out barrier
[ ] enrich option class to support path-dependent payoffs
[ ] add unit tests
[ ] add notebooks for analysis

See PR #30


assumed fill

Using the solver and everything that went into it, I finally have what's needed for an assumed fill.
(This assumed fill uses the solver to get the accessible locations.)
It's weird that -af has an f for "fill" and the other fills don't have the f,
but -a is for area - I couldn't think oif anything better.

a sample casual seed
 - spaceport -
sphere:
    get Missile from Torpedo Bay
sphere:
    get Gravity Boots from Gantry
    get HiJump from Weapon Locker
 - fall from spaceport -
sphere:
    get Grapple Beam from Ocean Shore: bottom
    get Morph Ball from Ocean Shore: top
sphere:
    get Bombs from Grand Vault
sphere:
    get Energy Tank from Impact Crater Alcove
    get Energy Tank from Auxiliary Pump Room
    get Wave Beam from Crypt
    get Gravity Suit from Monitoring Station
    get Energy Tank from Warrior Shrine: AmmoTank bottom
sphere:
    get Dark Visor from Submarine Nest
    get Plasma Beam from Causeway Overlook
    get Spazer from Antelier
    get Energy Tank from Loading Dock Storage Area
sphere:
    get Energy Tank from Submarine Alcove
    get Power Bomb from Eribium Apparatus Room
    get X-Ray Scope from Weapon Research
sphere:
    get Charge Beam from Mezzanine Concourse
    get Speed Booster from Briar: SJBoost
    get Varia Suit from Garden Canal
    get Energy Tank from Norak Escarpment
    get Energy Tank from Antechamber
sphere:
    get Super Missile from Hive Main Chamber
    get Energy Tank from Infested Passage
    get Energy Tank from Icy Flow
sphere:
    get Metroid Suit from Ocean Vent Supply Depot
    get Energy Tank from Ancient Basin
    get Energy Tank from Dark Crevice Cache
    get Speed Ball from Crocomire's Lair
sphere:
    get Space Jump from Archives: SpringBall
    get Energy Tank from Central Corridor: right
    get Ice Beam from Foundry
    get Energy Tank from Restricted Area
    get Energy Tank from Ready Room
sphere:
    get Screw Attack from Placid Pool
    get Energy Tank from Electromechanical Engine
    get Energy Tank from Fire's Bane Shrine
    get Hypercharge from Tower Rock Lookout

a sample expert seed
 - spaceport -
sphere:
    get Gravity Boots from Torpedo Bay
 - fall from spaceport -
sphere:
    get Super Missile from Ocean Shore: bottom
    get Speed Ball from Ocean Shore: top
sphere:
    get HiJump from Vulnar Caves Entrance
sphere:
    get Morph Ball from Submarine Nest
sphere:
    get Grapple Beam from Ocean Vent Supply Depot
    get Energy Tank from Monitoring Station
    get Energy Tank from Sensor Maintenance: ETank
    get Bombs from Trophobiotic Chamber
sphere:
    get Screw Attack from Benthic Cache
    get Energy Tank from Impact Crater Overlook
    get Energy Tank from Sandy Burrow: ETank
    get Energy Tank from Path Of Swords
sphere:
    get Wave Beam from Arena
    get Hypercharge from Crypt
    get X-Ray Scope from Warrior Shrine: AmmoTank top
    get Energy Tank from Electromechanical Engine
    get Power Bomb from Generator Manifold
    get Energy Tank from Containment Area
    get Energy Tank from Equipment Locker
    get Metroid Suit from Foundry
    get Missile from Loading Dock Storage Area
sphere:
    get Energy Tank from Epiphreatic Crag
    get Energy Tank from Grand Chasm
    get Energy Tank from Mezzanine Concourse
    get Energy Tank from Briar: SJBoost
    get Plasma Beam from Antechamber
    get Charge Beam from Glacier's Reach
    get Spazer from Grand Promenade
    get Energy Tank from Sitting Room
    get Energy Tank from Summit Landing
    get Speed Booster from Aft Battery
    get Space Jump from Extract Storage
    get Varia Suit from Forward Battery
    get Ice Beam from Ready Room
sphere:
    get Gravity Suit from Waste Processing
    get Energy Tank from Magma Lake Cache
    get Dark Visor from Garden Canal
sphere:
    get Energy Tank from Enervation Chamber

I'm not really happy with the interface.
Because everything was designed around the forward fill, it was hard to fit this in cleanly.

Joonie as the A in the file name and thought it was area rando. That's why I don't like the -af...

I used D for assumeD fill, though that's not great either

I was close to finishing assumed fill myself, and I was running into trouble on seed generation, running out of locations to place things (which shouldn't happen...) So I will have to look at yours to see what the differences are.

I tried testing this, rolled some, and it has canFly not needing jumpAble which kept putting impact crater items in logic. I tried to fix it myself but started getting worse errors. I know the expert logic is not done yet, but I want to see what this looks like with casual.


make image editor fullwidth

make image editor fullwidth on page img2img => inpaint

That can't be the best way to target whatever you're targeting... right?


Update base.theme.bash

Fix support for recognizing git when in submodules and the regression when in subdirectories of a git repository.

Thanks for finding that subdirectory regression and fixing it, @aashah ! I've tested this fix as well and it looks good from here. The broken output we were seeing was:
 |2.1.6|ruby 2.1.6p336 mymachine in ~/workspace/repo/src/subdirectory
○ →

when we should see:
ruby 2.1.6p336 mymachine in ~/workspace/repo/src/subdirectory
± dw |master ?:1 ✗| →

(note it is in "src/subdirectory" instead of "src/submodule")

Thanks!

Great, thanks! :smile:


Add a CircleCI config

This PR adds a simple CirleCI config to circleci/config.yml so that we can start building intercity-next on CircleCI. CircleCI also offers a free public plan for public repositories on GitHub.
This sample file is taken from some other Firmhouse projects and uses a basic Postgres, Redis, Ruby, Rails setup.

I believe the problem with Circle was that it doesn't build PRs over forks. So if that is still the case this is far from ideal for a open source project.

@jvanbaarsen Ok that makes sense! Let me check that. Semaphore has some issues with headless Chrome not being a recent version.

@jvanbaarsen I just tested this in https://github.com/intercity/intercity-next/pull/262
and enabled the setting in CircleCI:

Looks like it fully works!


Add a "Skeleton Tool" for human pose labeling

My actions before raising this issue

[*] Read/searched the docs
[*] Searched past issues

Context/summary
Human pose labeling is relatively common task in computer vision - while I have been using CVAT for a number of labeling tasks, pose labeling is a pain point.  From my perspective the best way currently to do pose labeling currently is with the points tool, but to label each point with an informative tag like "shoulder" or "knee" makes tagging very slow, and just tagging each point with a generic label means that there needs to be a refinement step on the generated tags which isn't ideal.
I think a nice feature would be to implement a "Skeleton Tool", similar to what can be seen here:  https://youtu.be/q17gqr0EIUQ?t=103.
In short, a user can create a bounding box that comes pre-populated with a number of points which can be moved after placing. The output format would include the coordinates of the box as well as coordinates of each point in the skeleton. Users can create an select from a number of skeletons.
I think CVAT is an outstanding tool, and I would prefer to see features like this added than to use another system. Thanks to the team for all the great work.
Related Issues
https://github.com/openvinotoolkit/cvat/issues/494
https://github.com/openvinotoolkit/cvat/issues/1421

Related #1476

Hello, I need a free annotation tool with skeleton support to integrate with one project and this is the feature left out in all free version. So I took a look at integrating it in CVAT (I don't need many feature since it is a closed annotation project and only export to COCO). Now it is a early prototype, but I need to move on other tasks for a while, so I'm sharing the code as a starting point for the discussions on this issue.
You can see a demo at this link (downloading the file provides a much better video quality): https://1drv.ms/v/s!All8gCWBqdOlgRCq-6UgTjdBWR0Y?e=6QfU7x
Here is the high level summary of the patch provided:

Adding a skeleton was braking the Any-Tool to Any-Label pattern, since for a skeleton the shape information is embedded in the label itself

So, skeleton tool only show label with skeleton information
So, skeleton object cannot change label after instantiated

In the label editor, we now have to possibility to add attributes and one skeleton object

A skeleton object has a One-to-One relationship with a label in the project
A skeleton editor will be need, but in the meantime we can add the skeleton information in the raw editor
A simple skeleton format has be defined (see below)
Attributes now have a category ('manual', 'auto', 'hidden')
A new hidden attribute named __internal_shape_orientation is added to every label

A SkeletonSpecs model had to be defined

Serialization of the skeleton has been added at most place needed (need to be confirmed)

The canvas now support a new skeleton shape

A skeleton shape is drawn as a box with opacity 0
A skeleton is using the resize event to remap the skeleton inside the box at draw time
A skeleton is using the drawstop event to remap the bonding box to skeleton points
A skeleton shape don't use shapeSizeElement, it uses shapeInfoElement to handle (Front, Back, Up, Down)
getFinalRectCoordinates now support an optional cursorPosition argument to handle first point second point drawn
A skeleton update its internal hidden attribute add onDrawDone time
A skeleton is added as a polyline with opacity 0
A skeleton is using the active object resizing event to the handle links defined by the template

I'm new to the CVAT code base, React, Redux and SVG, so there may be misconception in the code from the patch.
What I think is missing to do: complete the specifications, finalize the development, validation. test cases, skeleton editor and datasets export support. Hope this can help you.
The person 15 points skeleton template is defined as this, all coordinates are relative, they are normalized at the remap. This is what you need to paste in the template array in the raw editor:
{"name": "Head", "point": [50, 99], "links": ["Neck"]},
{"name": "Neck", "point": [50, 87], "links": ["R_shoulder", "L_shoulder"]},
{"name": "R_shoulder", "point": [28, 85], "links": ["R_elbow"]},
{"name": "L_shoulder", "point": [72, 85], "links": ["L_elbow"]},
{"name": "R_elbow", "point": [23, 72], "links": ["R_hand"]},
{"name": "L_elbow", "point": [77, 72], "links": ["L_hand"]},
{"name": "R_hand", "point": [23, 50], "links": []},
{"name": "L_hand", "point": [77, 50], "links": []},
{"name": "Back", "point": [50, 50], "links": ["Neck"]},
{"name": "R_hip", "point": [35, 48], "links": ["Back"]},
{"name": "L_hip", "point": [65, 48], "links": ["Back"]},
{"name": "R_knee", "point": [33, 25], "links": ["R_hip"]},
{"name": "L_knee", "point": [67, 25], "links": ["L_hip"]},
{"name": "R_feet", "point": [33, 1], "links": ["R_knee"]},
{"name": "L_feet", "point": [67, 1], "links": ["L_knee"]}
To try it, but you cannot export dataset, just save annotated projects (skeleton_demo.zip):
git clone --depth 1 --branch v1.7.0 https://github.com/openvinotoolkit/cvat
cd cvat && mkdir logs keys
python3 -m venv .env
. .env/bin/activate
pip install -U pip wheel setuptools
pip install -r cvat/requirements/development.txt
git switch -c experimental
git apply skeleton_demo.patch
python manage.py migrate
python manage.py collectstatic
python manage.py createsuperuser
code
npm ci && npm run start:cvat-ui
Go in code and start: server: debug

@alainrivard , thanks for sharing your patch. It will be great to work together and merge the feature into develop branch in the future.

hi,when will this skeleton tool been published?
Is there any approximate time?
I think everyone look forward to this magnificent function..

@csfankun , it is not in our roadmap yet. If nobody from community helps, it will not be in H1'2022. In general it is possible to annotate human pose, it is just inconvenient and slow. Vote for the issue. If we see that it is the most important feature for CVAT community, we will take it and implement for future releases.

@alainrivard thank you for this amazing patch
@nmanovic can you tell me if it's possible to draw the different parts of a polyline in different colors? The objective is to differentiate the right and left parts of the skeleton. Thx

We definitly need this feature asap. Thanks for the input @alainrivard

The feature has been implemented here https://github.com/cvat-ai/cvat/pull/1
It also was merged to current repository, you need to update CVAT from develop branch if you want to use it.
It is initial implementation and probably will be improved in the future, so, we are glad to get any feedbacks.
Thank you.