161 search by notation

The labels from

skos:altLabel
skos:notation
skos:hiddenLabel
skos:definition

are now indexed. By selection of the respective label, only the relevant index gets loaded. This means we don't have one blown up index, but multiple for each label, which makes us handle even quite large vocabs performant.
Also flexsearch has quite improved, so the index is not so big like before.
Re: Accessibility you are now able to check and uncheck boxes using Alt + <first letter of label e.g. Alt + a to toggle search for altLabels. Ctrl + k will you bring back to the search box.
Would like to know if the remaining labels i asked for in #128 should also be added. Since they will not blow up the index by default, I see no problem in doing so.
Will close #128 #161

The failing tests, I might handle in a separate issue. Everything goes through locally and I suspect some GitHub Action related issue, since sometimes one cypress test fails and sometimes two.

Assigning @acka47 for functional review
see e.g. https://test.skohub.io/sroertgen/test-vocabs/heads/main/index.en.html
but you can also push your on vocab to the test instance

@acka47 you can test now, e.g. https://test.skohub.io/sroertgen/test-vocabs/heads/main/w3id.org/two-concepts-one-file/c1.de.html
or you can send your own vocab to the test-server

@acka47 please check again.
Attributes are not set in a modal.

This looks really good. One last UX thing: I find myself adjusting toggle buttons and then trying to click into the search window to start a search. This won't work at the moment and I have to go back to hit the "close" button first. There are two options for improvements:

Do not require to hit the "close" button and also close the window when you click anywhere else.
Remove the "close" button completely.

@acka47 Outside closing is now implemented.
Please check again, e.g. https://test.skohub.io/sroertgen/test-vocabs/heads/main/w3id.org/two-concepts-one-file/c1.de.html


Simplify E2E and Flake Finder GHAs

Simplify the GHA files to be more concise, making it easier to maintain and add more toggles as necessary.
Should result in a similar job count on E2E, and Flake Finder will now have the same jobs (as it had diverged slightly).
Partially depends on https://github.com/submariner-io/shipyard/pull/1083
Signed-off-by: Mike Kolesnik<EMAIL_ADDRESS>

The external-net jobs are not getting executed. Is this expected until the dependent PR is merged?
Ran 0 of 28 Specs in 0.563 seconds
SUCCESS! -- 0 Passed | 0 Failed | 5 Pending | 23 Skipped
--- PASS: TestE2E (0.58s)

The external-net jobs are not getting executed. Is this expected until the dependent PR is merged?
Ran 0 of 28 Specs in 0.563 seconds
SUCCESS! -- 0 Passed | 0 Failed | 5 Pending | 23 Skipped
--- PASS: TestE2E (0.58s)

Yes I'll re-run it once the dependency is merged and we'll see that it runs :)

Project admins need to remove old combos from branch protection before merging

Project admins need to remove old combos from branch protection before merging

Done.


Error "ResizeObserver loop completed with undelivered notifications" with automaticLayout option

Reproducible in vscode.dev or in VS Code Desktop?

[X] Not reproducible in vscode.dev or VS Code Desktop

Reproducible in the monaco editor playground?

[X] Not reproducible in the monaco editor playground

Monaco Editor Playground Link
No response
Monaco Editor Playground Code
No response
Reproduction Steps

git clone https://github.com/kfrederix/monaco-resizeobserver-error.git
npm i
npm run dev
open the page in chrome
open the dev tools (and make sure they are docked to the bottom)
drag the dev tools up and down (to force the re-layout)

Following above steps will result in below error:

Actual (Problematic) Behavior
The ResizeObserver code (which lives in vscode repo) produces an error "ResizeObserver loop completed with undelivered notifications" when option automaticLayout is enabled. This error becomes visible when using webpack dev-server.
Expected Behavior
No ResizeObserver error when using webpack dev-server.
Additional Context
This bug is a duplicate of: https://github.com/microsoft/vscode/issues/183324
But I'm re-creating it here, since the one on vscode repo got closed while the issue is not yet fixed.
(+ also duplicated by https://github.com/microsoft/vscode/issues/197629)

I beelive the issue is linked to webpack devserver. Its a major pain point for me too

@simonh1000 yes with webpack dev-server it becomes visible from that overlay, as shown in the screenshot. (Without webpack dev-server the error is also there but it doesn't get in your way (so it's less of an issue...)

This could even be a bug in the webpack devserver. Please provide a monaco editor playground example so that we can reproduce and debug this issue.

This is not related to the devserver. With the reproduction above, the error becomes always visible by installing an explicit handler on window.onerror, irrespective of the devserver:
window.onerror = console.log

How can we get this reopened - this is a catastrophic that the issue is dismissed

I am able to reproduce it also on the playground now. I will open a new issue with playground repo so it can not be ignored anymore.

FYI: re-opened, including playground repro case: #4311


[4.2][BatchMode] Sort batch inputs rather than asserting; they are not always sorted.

Second attempt (after foolishly landing #15618 on master) at actually cherry-picking this change from #15531 to 4.2 branch.

@swift-ci please test and merge


fix racey console test doTestFilterAddressesByStatus

Type of change

Bugfix

Description
As suggested, in this PR the test doTestFilterAddressesByStatus is improved to not depend on the time the addresses are in the configuring phase

Checklist

[ ] Update/write design documentation in ./documentation/design
[x] Write tests and make sure they pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[x] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging
[ ] Update CHANGELOG.md

@enmasse-ci run tests testcase=FirefoxConsoleTest#testFilterAddressesByStatus

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: pr
TEST_CASE: FirefoxConsoleTest#testFilterAddressesByStatus
TOTAL: 17
PASS: 17
FAIL: 0
SKIP: 0
BUILD_NUMBER: 430


Long Indicator step + 2 minor fixes

Posibility to define a long indicator step (for example setting to 1 will display all values).
Minor bug fixes:

a defined Max value was never in the ruler and was impossible to reach
a default parsed mIndicatorInterval was incorectly set to 4 instead of 14

Extra added:
*padding to a ruler beggining and ending of getIndicatorIntervalWidth() size to both sides for some space in case we will be drawing a text (in future spaces should be dynamically calculated if bigger needs rise up).
*methods for manipulating long interval step: getLongIndicatorStep() and setLongIndicatorStep(final int step)

@SmileHub Thanks for generating the PR. 👍 I will review it and let you know if I have any questions.🙏


Does mapim support interpolate option?

Looking at the Vix API, it seems that mapim might not support the interpolate option that's available in the libvips API. Is that correct?
https://hexdocs.pm/vix/Vix.Vips.Operation.html#mapim/3
https://www.libvips.org/API/current/libvips-resample.html#vips-mapim

If I can figure out how to add support for the interpolate option, would you be open to the PR?

@GavinJoyce I went ahead and added support for vips-interpolate. If possible, can you try the latest master?
{:vix, git: "https://github.com/akash-akya/vix.git"}

Example usage
alias Vix.Vips.Operation
alias Vix.Vips.Interpolate

Operation.mapim(image, index, interpolate: Interpolate.new!("bilinear"))

@akash-akya thanks for adding support for interpolate!
I tested master and it seems to work great. Here are some example outputs:
nearest
Operation.mapim(image, index, interpolate: Interpolate.new!("nearest"))

bilinear
Operation.mapim(image, index, interpolate: Interpolate.new!("bilinear"))

vsqbs
Operation.mapim(image, index, interpolate: Interpolate.new!("vsqbs"))


API v9?

Looks like an awesome project, I'm looking to use this in a Toggl Track client of my own...
Do you have plans to update to the v9 API? It sounds like they're going to be phasing out v8 soon...
If not, I might make a fork
Cheers!

Hey,
I'm aware of their phase out. Their new documentation is not complete, neither was their old one. I contacted them and said, that I will wait till the documentation is complete.
I will contact them the coming days, as I'm pretty busy right now to see what happened in regards of the missing fields.
Best
Stefan

Sadly the documentation is that bad, that I have to reverse engineer everything via yolo & error.

I more or less migrated to the new API v9. I will test everything tomorrow and bake a release afterwards.

If you experience any problems, please hit me up with a new issue.
Cheers!


In-memory buildstatic issue

const gulp = require('gulp');
const Builder = require('systemjs-builder');

const builder = new Builder();
build.config(config);

function build(done) {
  return builder.buildStatic('path/to/entry', {}).then((output) => {
    console.log(output.source);
    done();
  })
}

gulp.watch(cwd, {
  options,
}, gulp.series(
  task1,
  task2,
  build,
));

The bundled file as output.source is not updated as source code changes.
Only creating a new builder resolves the issue. I'm not sure it is a issue or by design.

@guybedford Could you help me out?


fixes some signal handling

landing reporter befouls the terminal up if SIGINT is issued
--exit test used an incorrect description, and also did not reliably handle SIGINT when running

Ref: #4198

this needs changes I made to exit.spec.js from #4240, so I'll move the changes from there into this

I'm going to close this one and add it to #4245.

ah, nm, I see the issue.

Coverage decreased (-0.09%) to 92.967% when pulling 7496f93b163d6f74ac43444f9c7226154b44800d on boneskull/issue/2839-signal-fixes into 6838eaf66b94445e314f087ec407d7e2b5bf1fb5 on master.

I don't have any idea how we could test the newly-uncovered lines (in the landing reporter).  we'll have to deal with the 0.09% decrease in coverage.

cc @arvidott and/or @raymondfeng
this is short and low-impact, but would appreciate anybody taking a look.

So it would register "SIGINT" but the cursor would remain hidden? Not good. Good fix 👍

Not quite.  What was happening was if someone was using the landing reporter and issued a SIGINT (via ctrl-C or whatever) while the cursor was hidden (which it is for much of the reporter), it would not restore the cursor to the user's terminal.  annoying


Rename CONTRIBUTION.md to CONTRIBUTING.md

Description
In the effort of improving the state of the repo, this minor fix renames the contribution file from CONTRIBUTION.md to CONTRIBUTING.md, aligning with GitHub's Default Health File Convention. This also aligns with the majorly standardized convention employed by the majority of open-source repos.
Type of change

[x] Documentation update

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] My changes generate no new warnings
[x] New and existing unit tests pass locally with my changes
[x] I have maintained a clean commit history by using the necessary Git commands
[x] I have checked that my code does not cause any merge conflicts

Seriously...? This?
Where is the issue pointing out to this PR?

@Wahid7852 - There is no issue linked here, nor am I doing this for any "points", "levels", or GSSoC events.
Simply as I was poking around Hacktoberfest repos, noticed that the Github contribution guidelines section was not showing up - a result of the filename not following the convention laid out by Github and realized I can make the quick fix so that future viewers can have the more standardized experience.


Change license to MIT

R: @jeffposnick
Fixes #1660
In addition to updating the license, I standardized which files we're including the license headers on. Since we've historically mostly just been including headers on source files, I went ahead and removed them on files in test, infra, and gulp-task where it was present, just to be consistent.
/cc @willnorris

please keep the headers in test/, infra/, etc files.  Even if those files don't get included in the final deliverable, they're still source code all the same.  The goal is to ensure that the license governing the file is still clear, even if the file were separated from the rest of the repo (such as being copied and pasted into a different project).

@jeffposnick it looks like adding license headers to the test files is breaking the webpack hashes. Do you still have your script to update those?

I'll commit a change to the license branch to clean up the tests.

Thanks!

Good


route: add support description response tag at path

https://github.com/go-swagger/go-swagger/issues/1828

would it be possible to add a test for this behavior?

i also think about it. i'll do it on this week.

@casualjim done.


SAK-43378 - Fix CSV reader so event end times are not included

I'm leaving this as a draft at the moment because I don't love the calls to getTimeService() and I also don't love having to use this syntax. This appears to fix the bug though.
I believe the typical intention of an import and also newTimeRange is to not have the end time included in the range. It's possible the other imports may also have this problem.
IcalendarReader, OutlokReader and MeetingMakerReader all use the same version of newTimeRange.

seems okay!

Thanks, the only reason I didn't open this is because

I don't know if the other imports are also broken
I don't 100% know what's even up with this "include end and start times" in calendar to begin with. I believe most of the "standard" java.time methods are only "start date inclusive" and "end date exclusive" with no way to specify. In what cases would people want to specify? I feel like having these options in Sakai's TimeService has just caused so many bugs and issues.

This could be fixed by just setting the default to false in BasicTimeService. That feels like it would fix more than it breaks.
		protected boolean m_endIncluded = false;
But maybe tackling all this is another issue.

I'll open this, but I'm somewhat wondering if changing the default in kernel would help move us forward to a future java.time solution and resolve other issues.

I guess I'll just leave this as is fixing the specific issue with CSV reader. Unfortunately it seems kind of hard to clean up anything existing with this. I think in the future when we use a different time library these options of "include start/include end" won't matter anymore.

Matt have you seen the UserTimeService? it has been replacing the older TimeService

No, I haven't, but that looks like it only deals with time zone issues not time ranges.
I really don't know why Sakai's original TimeService had the booleans for "endIncluded" or "startIncluded". This is really legacy code.
I know since then we've got all these new java.time methods, but using them isn't easy unless we dropped these "*Included".

Usually the way I think of defining times (at least in a calendar) the start time would always be included and the end time would be excluded.
So for instance if you said 13:00-14:00 that means that the event starts at exactly 13:00 (included) but it will end essentially at 13:59:59.99...9 without really getting to 14:00. If start and end were both included the could overlap and cause a conflict. If start wasn't included that would mean it would be something like 13:00:00.00...1
I'd hope whoever re-writes the new calendar UI switches out all this usage of TimeService with just plain java.time and UserTimeService where needed.


fix #33,  remove redundant initialization

No need to initialize object twice,   the second initialize does nothing at all

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[New game]: Tilting Maze!

🎮 Game Request
I’m going to make how to simulate ball movement in a maze with JavaScript as we go through parts of a JavaScript game. We quickly go through how the game layout is created, then we see how to tilt the maze and how that affects the ball movements. And finally, we are going to discuss how can we use trigonometry to figure out how the balls should behave once they hit a wall.
Point down the features
Game points
My game features is moving the ball in the circle at the same time!
and we are trying to move 4 balls through arrow feature!
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @jshobhit11 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

Hey @jshobhit11 👋!
@kunjgit here,
We have this annoucement to make 📢!!
During the time of PR don't alter main index file ! 🙂
In main Readme file just use * as a game number during the time we are merging we will add number !! 👀
Make sure you join our Discord🕹 if you haven't 😇
Thank you 💗!

Hey @jshobhit11 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Manage the Tracker's lifetime with shared_ptr

Whenever any hook needs to make use of the Tracker singleton, have it atomically grab a reference to a shared_ptr singleton. When stopping tracking, unset that singleton, and then wait for all of the remaining references to it to be destroyed before really destroying the Tracker.

I did some benchmarking and this solution is 60% slower than main :(:
Main:
hyperfine 'memray run --trace-python-allocators -o /dev/null -m test test_list test_list test_list test_list'
Benchmark 1: memray run --trace-python-allocators -o /dev/null -m test test_list test_list test_list test_list
  Time (mean ± σ):      1.657 s ±  0.021 s    [User: 1.598 s, System: 0.062 s]
  Range (min … max):    1.640 s …  1.709 s    10 runs

This PR:
hyperfine 'memray run --trace-python-allocators -o /dev/null -m test test_list test_list test_list test_list'
Benchmark 1: memray run --trace-python-allocators -o /dev/null -m test test_list test_list test_list test_list
  Time (mean ± σ):      2.748 s ±  0.029 s    [User: 2.682 s, System: 0.072 s]
  Range (min … max):    2.715 s …  2.806 s    10 runs

Well, that's very sad. This looks very elegant, but obviously we can't accept that kind of overhead. It looks like it's coming from locking in the shared_ptr implementation. That's supposed to be cheap, but when you do something on every malloc or free, the cost adds up.
Oh well.


[FR] Add an option to hide attachments

Hey, it's a very useful plugin, thanks for developing!
Could you please add an option to hide the images or other attachments, so that we can focus on the Notes only ?

I like the idea! I'm considering adding a filter option to the plugin settings page. It would allow a basic regular expression so that you could pick and choose what you want to filter out. Would that work?

Yeah I believe it is achievable!

Added settings for excluding files based on a regular expression. Released in version 1.0.18

Added settings for excluding files based on a regular expression. Released in version 1.0.18

Really appreciate it, thank you!  🥳


seeds

need seed data for  Post, Comment, User and a seed.js to put them together
seed

[x] connect to modles
[x] connect to sequelize
[x] set up to populate database with seed data

comments
{
"id": "",
"content": "",
"user_id": "",
"post_id": ""
}
posts
{
"id": "",
"title": "",
"content":"",
"user_id": ""
}
users
{
"id": "",
"username": "",
"email": "",
"password": ""
}

have been tested and are functional


fix(config): fix api/dashboard URLs parsing not handling params and queries

The config refactoring break an Integration test in docker due to the GITGUARDIAN_API_URL format that highlighted a parsing issue. The trailing / being only cleaned if the URL had no params nor queries.
This MR fixes it and adds unit tests for the dashboard_to_api_url and api_to_dashboard_url to test these edge cases.

Codecov Report

Merging #198 (40f55bd) into main (30c8c5f) will increase coverage by 0.20%.
The diff coverage is 100.00%.

:exclamation: Current head 40f55bd differs from pull request most recent head 0bb896e. Consider uploading reports for the commit 0bb896e to get more accurate results

@@            Coverage Diff             @@
##             main     #198      +/-   ##
==========================================
+ Coverage   93.00%   93.20%   +0.20%
==========================================
  Files          36       36
  Lines        1887     1885       -2
==========================================
+ Hits         1755     1757       +2
+ Misses        132      128       -4

Flag
Coverage Δ

unittests
93.20% <100.00%> (+0.20%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

ggshield/utils.py
92.57% <100.00%> (+3.42%)
:arrow_up:

ggshield/path.py
80.35% <0.00%> (-3.58%)
:arrow_down:

ggshield/config.py
95.51% <0.00%> (-0.04%)
:arrow_down:

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 30c8c5f...0bb896e. Read the comment docs.


Directory User class's list properties cannot be cleared

E.g. User.Phones
Originally asked in #757 - quote:

As I understand it, updating with an empty list is meant to clear the list. Although if you were using JValue.CreateNull(), then it sounds like an explicit null value also cleared the list.
I wonder if the request-object to JSON conversion is doing something like removing empty lists from the resulting JSON.
I'll try to have a look today or tomorrow to see if anything like this is happening.

@homiDev I've confirmed that performing an Update with an empty list is meant to be the correct way to clear a list (e.g. for User.Phones).
And I've confirmed that
var update = dir.Users.Update(new User { Phones = new UserPhone[0] }, "userKey");

does send an empty JSON array to the server. The JSON from that request is {"phones":[]}� as expected.
I'll see if I can check with the backend team exactly how they expect this to be done.

The backend team have said that the backend behaviour is (it's acknowledged that this is a bit odd, but this is the way it is...):

Patch null - No effect
Patch empty array - No effect
Update null - Clears field
Update empty array - No effect

There is currently no way to set a null value using the client library, as null values are currently ignored when serializing to JSON, so no JSON is produced if a value is null. A fix is on its way to allow null values to be specified in IList properties.

It is now possible to force a null value to be included in serialized JSON.
E.g.
new User
{
    Phones = Google.Apis.Json.JsonExplicitNull.ForIList<UserPhone>()
}

We realise this is a little bit of a hack, which is an unfortunate consequence of the specifics of this service, but this should allow clearing of the list properties within the User object.

Thx for the update.
One question is still left. How to reset UserAddress.CountryCode to "null"?
This could also be done before 1.18 by sending a Json.Null representation.

This is a bit difficult, this admin.directory API is somewhat non-standard in that it attaches meaning to a null value; I think it's the only Google.Apis.* API to do so.
Null values are always ignored (see the newtonsoft settings), and not serialized to the JSON that is sent as the request object from client->server.
string is sealed, so we can't use the trick as we did for IList properties.
Presumably setting it to an empty string doesn't achieve what you want?
If not, we'll see if we can come up with a way to work around this.

Thx for the answer. I worked around it by removing the list entry from the IList and adding a new entry with copied properties except for the "CountryCode" property.
Setting it to empty string would raise an exception which says something like "invalid country code"

I'm finding the JsonExplicitNull.ExplicitNullList<T> solution problematic, because once you set an IList<T> property to such a value I don't see any easy way for other parts of the code to tell (e.g. can't use is since the ExplicitNullList<T> class is private).  They'd just get NotSupportedException whenever trying to interact with what appears to be a normal list.
An alternative workaround I've come up with is when creating the DirectoryService to specify a custom serializer, which is just a copy of the default NewtonsoftJsonSerializer (would be nice if that was made extensible) except it adds a custom Json.NET contract resolver that applies an empty-list-to-null converter to the IList<T> properties of all classes in the Google.Apis.Admin.Directory.directory_v1.Data namespace.
    public class EmptyListNullConverter : JsonConverter
    {
        public override bool CanConvert(Type objectType)
        {
            return (new Type[] { objectType }).Concat(objectType.GetInterfaces())
                .Any(type => type.IsGenericType && type.GetGenericTypeDefinition() == typeof(IList<>));
        }

        public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
        {
            var enumerable = value as IEnumerable;
            if (enumerable != null && enumerable.GetEnumerator().MoveNext() == false)
            {
                writer.WriteNull();  // Null instead of an empty array.
            }
            else
            {
                serializer.Serialize(writer, value);
            }
        }

        public override bool CanRead
        {
            get { return false; }
        }

        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            throw new NotImplementedException("Unnecessary because CanRead is false.");
        }
    }

    public class GoogleDirectoryContractResolver : DefaultContractResolver
    {
        public new static readonly GoogleDirectoryContractResolver Instance = new GoogleDirectoryContractResolver();

        private static readonly EmptyListNullConverter EmptyListConverter = new EmptyListNullConverter();

        protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization)
        {
            JsonProperty property = base.CreateProperty(member, memberSerialization);

            if (property.DeclaringType.IsClass
                && property.DeclaringType.Namespace == "Google.Apis.Admin.Directory.directory_v1.Data"
                && EmptyListConverter.CanConvert(property.PropertyType))
            {
                property.Converter = EmptyListConverter;
            }

            return property;
        }
    }

    public class GoogleDirectoryJsonSerializer : IJsonSerializer
    {
        private static readonly JsonSerializerSettings newtonsoftSettings;
        private static readonly JsonSerializer newtonsoftSerializer;

        static GoogleDirectoryJsonSerializer()
        {
            // Initialize the Newtonsoft serializer.
            newtonsoftSettings = new JsonSerializerSettings
            {
                NullValueHandling = NullValueHandling.Ignore,
                MetadataPropertyHandling = MetadataPropertyHandling.Ignore,
                Converters = { new RFC3339DateTimeConverter(), new ExplicitNullConverter() },
                ContractResolver = GoogleDirectoryContractResolver.Instance  // This is the only real difference from NewtonsoftJsonSerializer.
            };
            newtonsoftSerializer = JsonSerializer.Create(newtonsoftSettings);
        }

        // Other code copied from NewtonsoftJsonSerializer omitted for brevity.
    }

Usage:
var service = new Google.Apis.Admin.Directory.directory_v1.DirectoryService(
    new Google.Apis.Services.BaseClientService.Initializer()
    {
        Serializer = GoogleDirectoryJsonSerializer.Instance,
        // Other settings...
    }
);

This whole situation is annoying though.  Is there any chance at all of the backend team changing things to work in a more reasonable way?  Here's what seems logical to me:

Patch null - No effect
Patch empty array - No effect Clears field
Update null - Clears field
Update empty array - No effect Clears field

@chrisdunelm: I believe I've found a performance problem with the ExplicitNullConverter implementation.  In my testing with a sizeable data set JSON serialization was 5x slower and deserialization was 4x slower than before.  I have a fix to contribute, but are the instructions at https://developers.google.com/api-client-library/dotnet/contribute still correct (e.g. using codereview.appspot.com for code reviews)?
Also, when you wrote "The backend team have said that the backend behaviour is..." what is the scope of that behavior?  Just the directory API?  The whole Admin SDK?
Finally, I did manage to figure out that since your ForIList<T>() always returns the same instance for a particular T we can use something like user.Phones == null || user.Phones == JsonExplicitNull.ForIList<UserPhone>() to guard against accessing an ExplicitNullList<T> and getting NotSupportedException. It would be great if this poisoned well effect could be avoided altogether though.

It's now possible to instantiate NewtonsoftJsonSerializer with custom JsonSerializerSettings, allowing a change in null handling. This may be a more pleasant work-around.
Closing, work-around(s) are available.


Incomplete error message when mkdir fails

I made a mistake setting up my unit file's working directory and was greeted by:
Dec 07 23:24:05 33c3-prom01 prometheus[28076]: time="2016-12-07T23:24:05+01:00" level=info msg="Starting prometheus (version=1.4.1, branch=master, revision=63fe65bf2ff8c480bb4350e4d278d3208ca687be)" source="main.go:77"
Dec 07 23:24:05 33c3-prom01 prometheus[28076]: time="2016-12-07T23:24:05+01:00" level=info msg="Build context (go=go1.7.4, user=prometheus@33c3-prom01, date=20161204-09:54:20)" source="main.go:78"
Dec 07 23:24:05 33c3-prom01 prometheus[28076]: time="2016-12-07T23:24:05+01:00" level=info msg="Loading configuration file /home/prometheus/work/go/src/github.com/prometheus/prometheus/prometheus.yml" source="main.go:250"
Dec 07 23:24:05 33c3-prom01 prometheus[28076]: time="2016-12-07T23:24:05+01:00" level=error msg="Error opening memory series storage: mkdir data: permission denied" source="main.go:184"
Dec 07 23:24:05 33c3-prom01 systemd[1]: prometheus.service: main process exited, code=exited, status=1/FAILURE
Dec 07 23:24:05 33c3-prom01 systemd[1]: Unit prometheus.service entered failed state.

It would be better to show $PWD of where the mkdir failed.

This was fixed in https://github.com/prometheus/prometheus/pull/2270 as referenced above.


Regarding video recording of final exam

So I am trying to make my 2hour video less than 500mb.
One way is to zip, but very dangerous, the zip file is like 495mb.
I am thinking are we allowed to not record our microphone? so that the video should got less storage

I ask this question just now and the result until now is that CS mods do not need to record audio.  One more question, do u use Panopto?

are u recording 720p at 1 fps?

My video file was coming to 500+ MB but I used VLC media player to compress it to around 100. If you have VLC or similar you can try converting using the following settings: "please configure the software to use H264 encoding with 1 frame/sec and 128 kbps constant bitrate. " (from the e-exam SOP site)

try to use ffmpeg

Can try using ffpmeg? and refer to this link for the exact command https://mysoc.nus.edu.sg/academic/e-exam-sop-for-students/#_screen_recording_software

ffmpeg Should work well. My previous 2 hour recording only went up to 120mb

I use Panopto with resolution 1280*720, 8 fps and 340 kbps. It gave me 290M for a 2-hour long screen recording.

I use Panopto with resolution 1280*720, 8 fps and 340 kbps. It gave me 290M for a 2-hour long screen recording.

Hi, how to change the setting of Panopto?

Btw not sure if anyone else had this issue while using ffmpeg, where the mp4file is like 4x the length of the actual recording time. (My 2 hours of screen recording with ffmpeg would become an 8hour mp4 file for some reason). Couldn't find a way to rectify it, so I clarified with my TA (who clarified with Prof Henry I think) and they said that as long as the file is <500mb then its ok to have this video length issue.

I use Ink2Go to record. 2 hours will produce 320MB for me.

You can consider using ffmpeg. Even if you're using another screen recording software, ffmpeg can be used to convert it/scale it down. You can check this link out for the scaling down tutorial, and this one for the screen recording tutorial.

I use Panopto with resolution 1280*720, 8 fps and 340 kbps. It gave me 290M for a 2-hour long screen recording.

Hi, how to change the setting of Panopto?

I am using Windows and the setting is located in the bottom right corner.


[MAINT] Prevent workers from trying to parse sys.argv upon intialization

Fixes #849.
Description
This PR changes how CondaStoreWorker instances initialize.
CondaStoreWorker instances subclass traitlets.Application, which has an initialize method. initialize takes an argv list as an argument; traitlets uses this argument to set configuration variables. However if no argv is passed, sys.argv is parsed instead. In certain situations e.g. running pytest -svv, the worker initializes and immediately tries to parse -svv as a traitlets configuration variable, which of course does not exist.
This PR explicitly calls CondaStoreWorker.initialize([]), with an empty argv list. This prevents traitlets from trying to parse command line args as a way of setting configuration variables for the worker, meaning that -svv doesn't get passed to the worker. This allows us to run tests in verbose mode, among other things.
@trallard @jaimergp I'm assuming we don't actually intend for CLI args to be passed to the workers, right? I think this was unintended behavior, but I wanted to double check with you.

Other minor change: updated the .gitignore to include conda-store-ui static files, which I missed when the privatization PR went through.
Pull request checklist

[x] Did you test this change locally?
[x] Did you update the documentation (if required)?
[x] Did you add/update relevant tests for this change (if required)?

How to test
Here's the original offending pytest invocation, which now works as intended:
pytest tests/test_app_api.py::test_conda_store_register_environment_workflow -svv

Hmm, seems like we the server gets stuck waiting for workers with this change...
conda-store-server-1  | INFO:     <IP_ADDRESS>:58590 - "GET /conda-store/api/v1/ HTTP/1.1" 200 OK
conda-store-server-1  | [CondaStoreServer] WARNING | Waiting for worker... Use --standalone if running outside of docker
conda-store-server-1  | [CondaStoreServer] WARNING | Waiting for worker... Use --standalone if running outside of docker

Okay, it looks like we actually are passing arguments to the worker via the command line:
services:
  conda-store-worker:
    build:
      context: conda-store-server
      target: dev
    user: 1000:1000
    volumes:
      - ./tests/assets/environments:/opt/environments:ro
      - ./tests/assets/conda_store_config.py:/opt/conda_store/conda_store_config.py:ro
    depends_on:
      conda-store-server:
        condition: service_healthy
    platform: linux/amd64
    command:
      [
        "conda-store-worker",
        "--config",
        "/opt/conda_store/conda_store_config.py",
      ]

Not sure what the best path is here - we don't want traitlets to parse every argument, but we need to be able to pass some arguments (i.e. only the traitlets arguments). :thinking:

Turned out to be a bad test fixture. Fixed now!

Related: https://github.com/conda-incubator/conda-store/issues/594


The Order book for each categorical Market needs to be labeled

In categorical markets, the order book needs to display which outcome the order book is for.  Currently it only says order book and a user might not be able to identify which outcome that is for.

in redesign


Some fixes

This PR replaces the source file search by file(GLOB_RECURSE …) as this is not recommended by cmake. The 2nd commit fixes some issues I encountered recently.

Hi! I think the warning is unavoidable if you wish to avoid compiling the source code twice. I'm not 100% sure on this; @dascandy made the changes and that was his comment. I'll happily merge this but have pinged @dascandy in case he has opinions. I don't! :)

I think the warning is unavoidable if you wish to avoid compiling the source code twice.

It still done only once. @dascandy did a good job here; wondering none added this before as it drastically reduces compile steps.
What I've changed: Instead of building a static lib and putting it into shared one, it builds the object files and creates both from those. So building is required only once (as before). Finally the result should be the same, only the warning is gone.

Oh cool!
One thing: what was broken about the embedded setup before?

The content was no data generated. Eg. the error page was just text black / white.

Ah wow! @offa I can't believe I didn't check that! Thanks :)

@offa mind if I move the embedded generation scripts & header back to src/main/web? Do you have a test / script I can run to see if I broke it, other than its own unit tests?

Do you have a test / script I can run to see if I broke it, other than its own unit tests?

There's no test yet, but yep, makes fully sense to add one. I just used a project for testing.

It's not something running automatically, but you can use the server application I guess. If you get a red error page instead of plain black / white text everything is ok.

UT is on the way …

I'll pick up the moving back of embedded generation logic when Matt pulls your latest changes. Not a fan of merging :)

Ok, can you wait one more minute? I have just added some unit tests to this.

sure - I have time


cross-env-shell doesn't like relative paths

I've got a script as follows:
 "deploy:api": "cross-env-shell ./scripts/install.bat Services.Api ApiService $ENVIRONMENT",

I run this as so:
$> ENVIRONMENT=integration yarn run deploy:api

This results in the following error:
'.' is not recognized as an internal or external command,
operable program or batch file.
events.js:160
      throw er; // Unhandled 'error' event
      ^

yarn will run the relative script without cross-env-shell, but of course then you don't get the environment variable substitution

I tried that, but got the same results.

Seems like a bug. Happy to accept a PR to fix it.

Should this be taken care in commandConvert? parseCommand correctly identifies the command but spawn chokes on ./.


Why use Observable.create() and not just inherit from Observable?

Why use Observable.create() and not just inherit from Observable?

mark，认领


Is there any tutorial for using the pretrained model for predicting new sentence pair?

I have trained the Esim and Bert model.
However, I can not found any code for predicting new sentence pair?
Is anyone can help?

Here's one:
import torch
import matchzoo as mz

from anmm_train import *

test_pack = mz.datasets.wiki_qa.load_data('test', task=ranking_task)
test_processed = preprocessor.transform(test_pack, verbose=0)
print(
    "test_processed",
    "q", len(test_processed.left),
    "a", len(test_processed.right),
    "pair", len(test_processed.relation)
)

testset = mz.dataloader.Dataset(
    data_pack=test_processed,
    mode='point',
    batch_size=32
)
print(
    "testset",
    "batch", len(testset),
    "sample", len(testset._data_pack)
)

testloader = mz.dataloader.DataLoader(
    dataset=testset,
    device=device,
    stage='test',
    callback=padding_callback
)

if __name__ == "__main__":

    trainer.restore_model("./save/model.pt")
    prediction = trainer.predict(testloader)

    pass

# end main

, where anmm_train is the code copied from repo's README. Through you're in predict stage, the train/test dataset is still required as Trainer takes them as required parameter to construct.


Update German translations

Coverage remained the same at 59.145% when pulling f54acad60ebf16891b5835023e754ac84a337858 on der-lyse:german-translations into 75ffdcb68b41c85b17a0754e5b7db50e00d6a72b on newsboat:master.

Looks good to me too, thanks @der-lyse!


Update create-k8s-cluster-with-tf-and-aks.md

This commit makes the following changes:

Replaced screenshots and portal-based key lookup with command line listing for consistency

Fixed bugs within terraform configuration regarding resource group reference inconsistencies

Expanded terraform-specific step instructions to simplify sentence structure and and reference role of each artifact

Added placeholder variables in variables.tf example to account for recent changes in terraform specification for .tfvars references

The above changes address several outstanding issues:

#823 is partially addressed by change in resource group name reference

#782 is completely addressed by change in resource group name reference

#819 is probably addressed (this commit gets it working for me, but that issue does not enumerate specific issues)

Thanks for the contribution, @Tythos. We're in the process of moving the code of all Terraform articles to the azure/terraform repo to enable a testing pipeline. Therefore, once I've tested what you've done, I'll move the code to that repo and update the article. #hold-off

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

The updated article is now live.


Update Azure Containerapps docs & script

Update to the Azure ContainerApps script and documentation.
Fixes #134

@agoncal Would you mind taking a look please?

Fixes #134

Gentle ping @agoncal to take a look at this.

Almost done @agoncal. I ran into https://github.com/Azure/azure-cli-extensions/issues/5340 when I was trying to test it. I'll ping you once I've updated this PR.

@agoncal Changes are in - please review. If all looks good, please Squash and merge.


feat(core): Support command hooks

Would be cool to to .addHook on a command to intercept its lifecycle and maybe do some modifications at runtime.
command.addHook("pre", (args, options, tools) => {
  console.log("This command is about to run with: ", args, options)
})

command.addHook("post", (args, options, tools) => {
  console.log("This command just finished running with: ", args, options)
})

@nexxeln what do u think? can be used for stuff like validation and pre checks

Yeah this is nice


Refactor

Includes various performance improvements, refactor of cursor motion so it can be done outside of Editor, refactoring of scroll so that previous lines do not have to be shaped, and the ability to prune caches to reduce memory usage.
The most important change is to allow shaping parts of a buffer, by changing scroll to include both an index in Buffer::lines and the layout line. This lets only the part currently within the scrolled view of the buffer to be shaped and laid out. This greatly improves performance when scrolling as it does not have to shape and lay out lines that were never shown.
The shaping functions for Buffer and Editor now take a prune parameter, which when set to true, will drop the shaping and layout information of all lines outside of the scrolled view. This greatly decreases memory usage at the cost of reshaping when scrolling.

Ah, it's just clicked for me that "scrolling" in cosmic text is supposed to be understood in the context of something like an editor where you have a fixed-sized area (not dependent on the content) and you can approximate scroll height without shaping by counting newlines. It previously hadn't made any sense to me why you'd only want to shape until scroll, or why cosmic text was involved with scrolling at all.
Somewhat relatedly to this, I've been thinking about what it would take to implement support for CSS floats on top of cosmic-text (on the assumption that cosmic-text would be unlikely to want to support them itself). And my conclusion so far is that it would require the following:

The ability to layout around excluded areas (rectangles)
An incremental/resumable text layout API where you can:

Layout up to a point (character index)
Yield to the caller and allow them to mutate both the layout generated so far and the input parameters (with them being required to only modify inputs that haven't been consumed so far if they want a sensible resulting layout)
Resume layout passing the mutated layout and inputs

This would allow yielding at the locations of floated content, running some external logic to insert a new excluded area and move placed text runs so that they do not overlap this area, and then resuming text layout from that point.


Namespace all of the C API

C lacks namespaces, so all the functions and types should probably be prefixed with LS or LSC.

I would be willing to help out with this, but I'm afraid I'm not that familiar with how the bindings are generated to really be that much help

My opinion on this has since changed to "We absolutely should do this."


Expose Firebase Storage's new ability to list files in Flutter

The Firebase SDKs for Cloud Storage recently added the ability to list files in the storage bucket (Android, iOS). It would be great if this functionality were also available in the firebase_storage Flutter plugin.

@puf
The issue at https://github.com/flutter/flutter/issues/39054 has been closed and moved here. Future collaboration on this issue will be done here.

Duplicate of #83


unknown cause bug

Hi,
I tried to update the ractive lib in one of my apps and it broke (worked in 0.8, broke in 0.9/1.0). I can't really pin point it though, it simply fails to initialize correctly.
The exception is: TypeError: can't assign to properties of (new Boolean(false)): not an object
From: https://github.com/ractivejs/ractive/blob/cb384af6e034fa9c933f126db1f6e02013adcb5b/src/view/items/element/binding/Binding.js#L13
And the stack trace is quite long but here is the summary:
Binding
GenericBinding
createTwowayBinding
recreateTwowayBinding
...
resetPartial(...)

And the resetPartial is applied on a component.
I wasn't able to understand what goes wrong so far. Any hints welcome.

Shot in the dark, twoway is by default false on 0.9. Try doing Ractive.defaults.twoway = true at the beginning of the app to see if this fixes that.

no kidding?!? 😲 😲 😲 ...why has it been disabled by default? (seems like very useful to me and what's intuitively expected).
Btw, I tried it but sadly without effect. Nice try ;)

oh wait. twoway... no. I meant isolated became true by default.

Indeed, I checked that, it's not the cause ...I still have no idea what's going on. It's the typical effect that small examples work but once you reach a certain complexity, some probably minor bug makes the whole blow up.

@dagnelies what type of element and binding? (element.name and name in the stack frame when you pause on all exceptions in chrome)
I'm poking around it now, but nothing has jumped out so far.

Definitely gonna need a working example/recreation fiddle I think.

@evs-chris The element is an "Input" field, and the binding is on the "value".
@JonDum That would be nice indeed, I wasn't able to reproduce it in a small example yet.

if I understand right, interpolators are used for some kind of animations, which I don't use whatsoever.
Somehow, the attribute "value" has an interpolator false which results into an exception later on because false is not expected. On the other hand, the attributes with an interpolator null seem to be fine ...I think.

...I'm getting closer ...give me some more time

Ok, found it! 🎉
What caused the exception is a harmless loooking <input value="{{prefix}}/{{suffix}}" disabled />.
This broke, quite simply.
However, if you put this in a small example by itself, it works just fine. I still don't know what combination of stuff caused it to throw the exception. Replacing it by <input value="{{prefix + '/' + suffix}}" disabled /> worked ...although I have another problem since the bindings are resolved correctly.

If you don't see any objections, I'm going to close this as it's unlikely I'll ever discover why this fragment caused the exceptions whereas it works as standalone. At some point the interpolator is wrongly set, that's all I can say.

There are two interpolators in ractive: algorithmic number interpolators for animation (1 -> 5) and view string interpolators for putting strings in the midst of other strings (hello, {{name}}!).
Bindings require a single (view) interpolator, so that the binding can map back to exactly one model. There was a bit of weird logic in the binding selector code that may have allowed a binding through, but the attribute code that puts the interpolator in place on the attribute was correct, which left the interpolator false. This should now be fixed in edge, should anyone happen to cause an attempt to recreate a binding on an attribute with more than one interpolator.

thanks 👍

I'll test it tomorrow as well, to see if it works in the "real case" too.

I confirm it, no more exceptions thrown. 👍


Inititalize with issue, send, and burn actions

Good work 👍
I suggest we'll have:

Javascript standard badge (and more importantly, verifying it does passes the linter).
Travis CI badge (+ tests, at least with Node 4.6.1 and latest).
slack badge.
npm version badge (after published).
Documentation - if no time to document other 2 methods, please at least just write their signature in README.md

Great!
You can merge (please use Squash) and publish to npm.


Update of Quartz library to v3.1.0 broke PublishSingleFile

After updating to Quartz library when publish into Single exe we got following error
Error:
  An assembly specified in the application dependencies manifest (repro.deps.json) was not found:
    package: 'Microsoft.Data.SqlClient.SNI.runtime', version: '2.0.0'
    path: 'runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.pdb'

I have found similiar issue https://github.com/dotnet/SqlClient/issues/595 but it's not related to quartz
Minimal repro with csproj: Web Application.csproj
<Project Sdk="Microsoft.NET.Sdk.Web">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <PublishSingleFile>True</PublishSingleFile>
    <RuntimeIdentifier>win-x64</RuntimeIdentifier>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Quartz" Version="3.1.0" />
  </ItemGroup>
</Project>

dotnet publich -c Release  will generate single exe, that will fail with following error
\bin\Release\netcoreapp3.1\publish> .\WebApplication5.exe
                                                                     Error:
  An assembly specified in the application dependencies manifest (WebApplication5.deps.json) was not found:
    package: 'Microsoft.Data.SqlClient.SNI.runtime', version: '2.0.0'
    path: 'runtimes/win-x64/native/Microsoft.Data.SqlClient.SNI.pdb'

Or in series of cli commands
mkdir repro
dotnet new web
dotnet add package Quartz
dotnet publish -c Release -r win-x64 /p:PublishSingleFile=True -o dist
.\dist\repro.exe

Seems to be fixed in MIcrosoft.data.SQLClient


Reorganize Kubernetes upgrade files

What this PR does / why we need it:
Reorganize Kubernetes upgrade files

This change is

@acs-bot test this please

Hey @amanohar @colemickens, please make sure PRs have a meaningful explanation for others who don't have shared context around your change set. It's especially important as we are now have a release process. Let me know if you have any questions (here/slack/etc).

@seanknox, detailed context was in this PR: https://github.com/Azure/acs-engine/pull/707
This PR was a simple move of files to a new folder for better grouping/organization so I don't think it needed a more detailed context.

Right, but there is no obvious connection to #707 mentioned here. Git commit messages need to be meaningful too, so devs looking at the git history can understand the nature of a change without having to look manually at every file changed. Git conventions will start being enforced with this PR: https://github.com/Azure/acs-engine/pull/693, FYI.


Error on click button Upload without file in the input (instructor promo video)

When I Cliked the Upload button, logued as a instructor, without selecting a file in the input, as a result I recibe this error.
Hope it helps!
Thanks for  the great work!

hello good day , i download sa ulearnpro , and i follow the instruction , but the system not working.  the errr is ip address

Any solution for this one?


Make deprecations of 2.054 errors

This is after 4 years in deprecation, I think enough time has passed to switch this over.
Needs also a PR for documenation and library changes.

Tests need updating.

Documentation: https://github.com/D-Programming-Language/dlang.org/pull/978
Library: https://github.com/D-Programming-Language/druntime/pull/1231


win32_registry bump

Would you consider bumping the major version of win32_registry if it doesn't break anything in your package? If you need I could take time to do it myself, if you accept PRs.

That would be mega if that worked out. I also have a conflict with the dependencies right now

@guillaumeboehm @aexei Please upgrade to v0.1.9


buildFHSEnv: add standard paths for compilers

Things done:

[x] Tested using sandboxing (nix-build --option build-use-chroot true or nix.useChroot on NixOS)
[x] Built on platform(s): NixOS / OSX / Linux
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

More
Our compilers do not search in FHS locations for include files and libraries to enforce purity. This is contrary to what we want in FHS environments -- this patch achieves approximation of it via NIX_* flags.
Fixes issue #13933
cc @tokudan

@tokudan, it would be nice if you would test this -- I've used slightly other flags and variables to achieve lower priority of them than passed in the actual command line.

I've added these two environment variables to my build environment and it seems to be working, the precheck of openwrt is successful.
I'm not sure how to use buildFHSUserEnv with a custom nixpkgs, so I don't know how I can check this pull request with nix-shell.

Well, I had similar results so this should be OK. Thanks, let's merge.


Drawer close on drag when direction is set to right and scrollable content

When the Drawer direction is set to right and having a scrollable content, the drawer is only closing when the scrollbar is on top but not closing on drag when there is a scroll
Sandbox: https://codesandbox.io/p/devbox/drawer-direction-right-forked-qvsts5?workspaceId=021ca430-6b5a-4f63-b53b-b37cac3c53d8
https://github.com/emilkowalski/vaul/assets/150527559/9bf2595c-8e61-4a50-b0d8-1ed51ced632a

I found this bug, thanks @imopbuilder for reporting it
Additional notes to leave to maintainer to get better ideas for solution:
More than likely the scroll area overrides the swipe functionality, so instead of being able to swipe, you can only scroll. this problem has been solved by MUI library, more specifically this https://mui.com/material-ui/react-drawer/#swipeable component, the SwipeableDrawer. Try it on mobile and see how flawlessly you can scroll AND swipe to close the sidebar
MUI has proven it's possible to do it, so it's up to vaul to fix this issue as well

@MilanObrenovic This is unrelated.
The issue here is that initially, when the only position was bottom, you were only able to drag once you scrolled all the way to the top, like an iOS Sheet. That being said now that we can use it on the sides I'll disable that functionality for right and left positioned drawers.

what do you mean with disable? is this gonna be fixed or not? I just want to use the drawer as a side nav and swipe to close it even after scrolling. Thats it

Fixed in #247

This has been fixed 👍🏻

Perfect. I just tested and can confirm that it works. Great job, thank you

This could have not been caused by that PR, as this doesn’t touch the code related to that logic. Can you provide a codesandbox with reproduction?

This could have not been caused by that PR, as this doesn’t touch the code related to that logic. Can you provide a codesandbox with reproduction?

nevermind, this has existed before. i just tested on https://ui.shadcn.com/docs/components/drawer official docs. you can try it yourself there. is this behavior intentional to close the drawer onClickDown, instead of onClickUp?

Yes, Radix does that as well.


Channel and header

Components in this PR:

Channel
Channel header
Thread header
Thread
Message list
Jump to latest message

Responsive layout implemented in sample app, guide added to the docs - maybe this could be a shared guide between React and Angular, I guess only the HTML snippets are framework-specific here

Descripition
Figma
Implementation

Channel header + jump to latest message button - light

Channel header + jump to latest message button - dark

Thread header + jump to latest message button - light

 close button is on the right because theme-v1 looked really bad if close button was on the left

Thread header + jump to latest message button - dark

Loading state - light

Loading state - dark

No channel selected - light

No channel selected - dark

Changes in theme-v1: thread header

closes #91

:tada: This PR is included in version 3.0.0-theming2.1 :tada:
The release is available on:

npm package (@theming2 dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Undo, Redo and Save are now working as expected

Was incorporated as part of PR 59. Closing with comment.


Issue one-away error with embedvec_recommender could be repeated with llm_recommender

See cited area ----------  in the log
Running Connection Solver Agent with EmbedVec Recommender 0.6.2
Enter 'file' to read words from a file or 'image' to read words from an image: file
Please enter the word file location: data/word_list4.txt
Puzzle Words: ['rumble', 'table', 'pony', 'sift', 'roll', 'bun', 'tree', 'twist', 'salad', 'clap', 'comb', 'peal', 'dig', 'braid', 'root', 'book']

Generating vocabulary for the words...this may take about a minute

Generating embeddings for the definitions

ENTERED EMBEDVEC_RECOMMENDER
(120, 120)
(120, 120)
candidate_lists size: 71

EMBEDVEC_RECOMMENDER: RECOMMENDED WORDS ['clap', 'peal', 'roll', 'rumble'] with connection The words are connected by the theme of 'making a loud sound'.
Is the recommendation accepted? (y/g/b/p/o/n): g
Recommendation ['clap', 'peal', 'roll', 'rumble'] is correct

ENTERED EMBEDVEC_RECOMMENDER
(89, 89)
(89, 89)
candidate_lists size: 51

-----------------------------------------------------------------------------
EMBEDVEC_RECOMMENDER: RECOMMENDED WORDS ['braid', 'bun', 'comb', 'twist'] with connection All words relate to hairstyling techniques or tools.
Is the recommendation accepted? (y/g/b/p/o/n): n
Recommendation ['braid', 'bun', 'comb', 'twist'] is incorrect
Changing the recommender from 'embedvec_recommender' to 'llm_recommender'

ENTERED LLM_RECOMMENDER
attempt_count: 1
words_remaining: ['book', 'root', 'braid', 'dig', 'comb', 'salad', 'twist', 'tree', 'bun', 'sift', 'pony', 'table']

LLM_RECOMMENDER: RECOMMENDED WORDS ['braid', 'bun', 'comb', 'pony'] with connection Hairstyle terms
Is the recommendation accepted? (y/g/b/p/o/n): o
Recommendation ['braid', 'bun', 'comb', 'pony'] is incorrect, one away from correct

>>>Number of single topic groups: 4
More than one single-topic group recommendations, selecting one at random.

>>>Selected single-topic group:
Recommended Group: ('braid', 'comb', 'bun')
Connection Description: All three words—braid, comb, and bun—can be related to the single topic of hairstyling or hair care. A 'braid' is a style of arranging hair by interweaving strands, a 'comb' is a tool used for untangling, arranging, and styling hair, and a 'bun' is a hairstyle where the hair is pulled back from the face and twisted or rolled into a circular shape. Therefore, they all share a context of hair and hairstyling.

>>>One-away group recommendations:
using one_away_group_recommendation

LLM_RECOMMENDER: RECOMMENDED WORDS ['braid', 'bun', 'comb', 'twist'] with connection The common connection among the anchor_words 'braid', 'comb', and 'bun' is related to hairstyles or hair arrangement. 'Twist' is a term used in hairstyling to describe a way of arranging hair, similar to a braid or bun. Among the candidate words, 'twist' is the most connected as it directly relates to hair styling techniques, while the other words do not share this specific connection.
Is the recommendation accepted? (y/g/b/p/o/n): o
Recommendation ['braid', 'bun', 'comb', 'twist'] is incorrect, one away from correct
------------------------------------------------------------------------------

>>>Number of single topic groups: 4
More than one single-topic group recommendations, selecting one at random.

>>>Selected single-topic group:
Recommended Group: ('braid', 'bun', 'twist')
Connection Description: All three words—braid, bun, and twist—can be related to the single topic of hairstyles. Each term refers to a different style or method of arranging hair. A braid involves interweaving strands of hair, a bun involves gathering hair into a rounded shape typically on the top or back of the head, and a twist involves rolling or winding sections of hair. Thus, the context of hair styling unifies these three words.

>>>One-away group recommendations:
using one_away_group_recommendation

LLM_RECOMMENDER: RECOMMENDED WORDS ['braid', 'bun', 'pony', 'twist'] with connection The anchor words 'braid', 'bun', and 'twist' are all hairstyles or related to hair styling. Among the candidate words, 'pony' connects most strongly to hair as it can refer to a 'ponytail', which is a type of hairstyle, similar to a braid, bun, or twist.
Is the recommendation accepted? (y/g/b/p/o/n): b
Recommendation ['braid', 'bun', 'pony', 'twist'] is correct

ENTERED LLM_RECOMMENDER
attempt_count: 1
words_remaining: ['book', 'sift', 'table', 'tree', 'dig', 'root', 'comb', 'salad']

LLM_RECOMMENDER: RECOMMENDED WORDS ['comb', 'dig', 'root', 'sift'] with connection Actions related to searching or uncovering
Is the recommendation accepted? (y/g/b/p/o/n): y
Recommendation ['comb', 'dig', 'root', 'sift'] is correct

ENTERED LLM_RECOMMENDER
attempt_count: 1
words_remaining: ['table', 'salad', 'book', 'tree']

LLM_RECOMMENDER: RECOMMENDED WORDS ['book', 'salad', 'table', 'tree'] with connection Words that can be preceded by the word 'table'
Is the recommendation accepted? (y/g/b/p/o/n): p
Recommendation ['book', 'salad', 'table', 'tree'] is correct
SOLVED THE CONNECTION PUZZLE!!!

FINAL PUZZLE STATE:
{   'found_blue': True,
    'found_count': 4,
    'found_purple': True,
    'found_yellow': True,
    'invalid_connections': [   (   '8fb5000dd8d1c75db7d9b62ee2785ad4',
                                   ['braid', 'bun', 'comb', 'twist']),
                               (   '3e9d0732e7304d1ac6d13ae15defe242',
                                   ['braid', 'comb', 'bun', 'pony']),
                               (   '8fb5000dd8d1c75db7d9b62ee2785ad4',
                                   ['braid', 'comb', 'bun', 'twist'])],
    'llm_retry_count': 0,
    'llm_temperature': 0.7,
    'mistake_count': 3,
    'puzzle_recommender': 'llm_recommender',
    'puzzle_status': 'initialized',
    'puzzle_step': 'puzzle_completed',
    'recommendation_count': 7,
    'recommended_connection': "Words that can be preceded by the word 'table'",
    'recommended_correct': True,
    'recommended_words': ['table', 'salad', 'book', 'tree'],
    'tool_to_use': 'END',

    'words_remaining': [],

Duplicate of #30


chapter 16, form.py reference

just a typo I noticed.
Listing 16.7 references app/forms.py which you've moved to app/main/forms.py
Listing 16.8 references from app.forms import SearchForm when you when you want from app.main.forms
running the app without the typo fix gets a "app.forms not found"
thanks

Thanks. Looks like I missed a few updates, this happened after I reordered a couple of chapters. I'll get everything fixed.


[WIP] Force Automate to use the object_class and object_id that is passed in

AutomateTask#do_request was overwriting object_class and object_id parameters with self.class.name and id as opposed to using what was passed in with the AutomateRequest parameters.
This PR undoes that overwrite and if both object_class and object_id are passed in - we use them
Links

PT #134531729

Steps for Testing/QA

Build a Scheduled Automate Job with Type and Selection of Object Attributes filled in.
Run the scheduled job and verify the job runs with the expected Object Attributes

@miq-bot add_label automate, bug

@miq-bot assign @gmcculloug

-- cc @tinaafitz

@syncrou Tested changes.... it looks great!
Service object in Automate:
[----] I, [2016-11-17T13:19:37.189071 #88044:3fceddc9ae3c]  INFO -- : Q-task_id([automation_task_481])     Attribute - request: inspectme
[----] I, [2016-11-17T13:19:37.191074 #88044:3fceddc9ae3c]  INFO -- : Q-task_id([automation_task_481])     Attribute - service: #MiqAeMethodService::MiqAeServiceService:0x007f9d9b691690[----] I, [2016-11-17T13:19:37.192124 #88044:3fceddc9ae3c]  INFO -- : Q-task_id([automation_task_481])     Attribute - service_id: 110

@syncrou The current logic means we can only pass either the selected object or the automation_task object to automate.  It would be best if we could provide both objects.
I believe @tinaafitz and @mkanoor have an idea on how to achieve this.

@gmcculloug - So we're looking to change behavior of Automate to accept both objects? - That wouldn't break any legacy Automate code?

Automate can already accept multiple objects as part of the URL that initiates automate resolution.  We need to pass the data from the schedule to the automate task so it get recognized properly.

@miq-bot add_label wip

@miq-bot remove_label wip

@syncrou Please review failing tests.  Otherwise, the scheduler is now passing objects to automate as expected.

Euwe Backport conflict:
$ git cherry-pick -e -x -m 1 b970e12
error: could not apply b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

$ git status
On branch euwe
Your branch is up-to-date with 'upstream/euwe'.
 to mark resolution)

	both modified:   app/assets/javascripts/controllers/schedule/schedule_form_controller.js
	both modified:   app/controllers/ops_controller/settings/automate_schedules.rb
	both modified:   app/views/ops/_schedule_show.html.haml

$ git diff

diff --cc app/assets/javascripts/controllers/schedule/schedule_form_controller.js
index 14e2ca9,d647eaf..0000000
--- a/app/assets/javascripts/controllers/schedule/schedule_form_controller.js
+++ b/app/assets/javascripts/controllers/schedule/schedule_form_controller.js
@@@ -74,8 -74,7 +74,12 @@@ ManageIQ.angular.app.controller('schedu
          $scope.scheduleModel.object_request  = data.object_request;
          $scope.scheduleModel.target_class    = data.target_class;
          $scope.scheduleModel.target_id       = data.target_id;
++<<<<<<< HEAD
 +        $scope.scheduleModel.readonly        = data.readonly;
 +        $scope.scheduleModel.attrs           = data.attrs;
++=======
+         $scope.scheduleModel.ui_attrs        = data.ui_attrs;
++>>>>>>> b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate

          $scope.setTimerType();

@@@ -214,12 -213,11 +218,17 @@@
          $scope.scheduleModel.instance_name   = data.instance_name;
          $scope.scheduleModel.object_message  = data.object_message;
          $scope.scheduleModel.object_request  = data.request;
++<<<<<<< HEAD
 +        $scope.scheduleModel.target_class    = data.object_class;
 +        $scope.scheduleModel.target_id       = data.object_id;
 +        $scope.scheduleModel.readonly        = data.readonly;
++=======
+         $scope.scheduleModel.target_class    = data.target_class;
+         $scope.scheduleModel.target_id       = data.target_id;
++>>>>>>> b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate
          $scope.scheduleModel.targets         = [];
          $scope.scheduleModel.filter_typ      = null;
-         $scope.scheduleModel.attrs           = data.attrs;
+         $scope.scheduleModel.ui_attrs        = data.ui_attrs;
          miqService.sparkleOff();
        });
      } else {
diff --cc app/controllers/ops_controller/settings/automate_schedules.rb
index d8a6db2,3006a4e..0000000
--- a/app/controllers/ops_controller/settings/automate_schedules.rb
+++ b/app/controllers/ops_controller/settings/automate_schedules.rb
@@@ -12,9 -12,8 +12,14 @@@ module OpsController::Settings::Automat
        :object_request  => automate_request[:object_request],
        :target_class    => automate_request[:object_class],
        :target_classes  => automate_request[:target_classes],
++<<<<<<< HEAD
 +      :target_id       => automate_request[:object_id],
 +      :attrs           => automate_request[:attrs],
 +      :readonly        => automate_request[:readonly]
++=======
+       :target_id       => automate_request[:target_id],
+       :ui_attrs        => automate_request[:ui_attrs]
++>>>>>>> b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate
      }
    end

@@@ -51,16 -50,15 +56,21 @@@
        targets = Rbac.filtered(automate_request[:target_class]).select(:id, :name)
        automate_request[:targets] = targets.sort_by { |t| t.name.downcase }.collect { |t| [t.name, t.id.to_s] }
      end
++<<<<<<< HEAD
 +    automate_request[:target_id]      = filter[:parameters][:object_id] || ""
 +    automate_request[:readonly]       = filter[:parameters][:readonly] || true
 +    automate_request[:attrs]          = filter[:parameters][:attrs] || []
++=======
+     automate_request[:target_id]      = filter[:ui][:ui_object][:target_id] || ""
+     automate_request[:ui_attrs]       = filter[:ui][:ui_attrs] || []
++>>>>>>> b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate

-     if automate_request[:attrs].empty?
-       AE_MAX_RESOLUTION_FIELDS.times { automate_request[:attrs].push([]) }
+     if automate_request[:ui_attrs].empty?
+       AE_MAX_RESOLUTION_FIELDS.times { automate_request[:ui_attrs].push([]) }
      else
        # add empty array if @resolve[:new][:attrs] length is less than AE_MAX_RESOLUTION_FIELDS
-       len = automate_request[:attrs].length
-       AE_MAX_RESOLUTION_FIELDS.times { automate_request[:attrs].push([]) if len < AE_MAX_RESOLUTION_FIELDS }
+       len = automate_request[:ui_attrs].length
+       AE_MAX_RESOLUTION_FIELDS.times { automate_request[:ui_attrs].push([]) if len < AE_MAX_RESOLUTION_FIELDS }
      end
      automate_request
    end
diff --cc app/views/ops/_schedule_show.html.haml
index 7444478,199b6eb..0000000
--- a/app/views/ops/_schedule_show.html.haml
+++ b/app/views/ops/_schedule_show.html.haml
@@@ -77,24 -77,18 +77,39 @@@
              %p.form-control-static
                = h(@object_name)

++<<<<<<< HEAD
 +      %div
 +        = _("Simulation Parameters")
 +        .form-group
 +          %label.col-md-2.control-label= _("Execute Methods")
 +          .col-md-10
 +            %p.form-control-static
 +              = h(@selected_schedule.filter[:parameters][:readonly].to_s.titleize)
 +      %div
 +        = _("Attribute/Value Pairs")
 +        - @selected_schedule.filter[:parameters][:attrs].each_with_index do |attr, i|
 +          .form-group
 +            %label.control-label.col-md-2
 +              = (i + 1).to_s
 +            - if attr
 +              .col-md-2
 +                = h(attr[0])
 +              .col-md-2
 +                = h(attr[1])
++=======
+       - if @selected_schedule.filter[:ui][:ui_attrs].present?
+         %div
+           = _("Attribute/Value Pairs")
+           - @selected_schedule.filter[:ui][:ui_attrs].each_with_index do |attr, i|
+             .form-group
+               %label.control-label.col-md-2
+                 = (i + 1).to_s
+               - if attr
+                 .col-md-2
+                   = h(attr[0])
+                 .col-md-2
+                   = h(attr[1])
++>>>>>>> b970e12... Merge pull request #12722 from syncrou/object_type_object_id_for_automate

      - if @selected_schedule.sched_action[:method] != 'db_backup'
        %div

@syncrou @gmcculloug Please resolve conflict in Euwe-specific PR or suggest other PRs to backport.

@chessbyte - I'll take care of it.  Thanks!

Backported to Euwe via https://github.com/ManageIQ/manageiq/pull/12886


Updated FramesEditor layout, fixed ColorPicker, fixed RadioGroup

Got motivated to work on this on the plane. I hope you like it!

@BDisp did you see this PR to your PR?

@BDisp did you see this PR to your PR?

I didn't saw before, sorry. Please resolve the conflicts.

Done

That a great improvement. Thanks.


AttributeError: module 'rospkg' has no attribute 'RosPack'

Hi everyone, I am facing this issue. Did all steps but still this error:
Traceback (most recent call last):
File "/home/vidit/Downloads/SFA3D/ros/src/super_fast_object_detection/src/rosInference.py", line 2, in
import sensor_msgs.point_cloud2 as pc2
File "/opt/ros/melodic/lib/python2.7/dist-packages/sensor_msgs/point_cloud2.py", line 48, in
import roslib.message
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslib/init.py", line 50, in
from roslib.launcher import load_manifest  # noqa: F401
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslib/launcher.py", line 48, in
_rospack = rospkg.RosPack()
AttributeError: module 'rospkg' has no attribute 'RosPack'

For ROS implementation, please contact @AhmedARadwan to get instructions. Many thanks


Incompatibility between linux python azure function and azure ML

Is your question related to a specific version? If so, please specify:
Core Tools V4~
Linux Functions
What binding does your question apply to, if any? (e.g. Blob Trigger, Event Hub Binding, etc)
Http trigger
Question
I am experiencing some issues trying to call Azure machine learning functions from a function. Functions apps appear to be incompatible with Azure machine learning, due to a dotnet error. Is there a way to specify a Linux distro for the function that supports .NetCore 2.1 to allow azure machine learning SDK to function and the Core Tools 4~?
Result: Failure Exception: NotImplementedError: Linux distribution debian 11. does not have automatic support. .NET Core 2.1 can still be used via dotnetcore2 if the required dependencies are installed. Visit https://aka.ms/dotnet-install-linux for Linux distro specific .NET Core install instructions. Follow your distro specific instructions to installdotnet-runtime-and replacewith2.1`. Stack: File "/azure-functions-host/workers/python/3.8/LINUX/X64/azure_functions_worker/dispatcher.py", line 398, in _handle__invocation_request call_result = await self._run_async_func( File "/azure-functions-host/workers/python/3.8/LINUX/X64/azure_functions_worker/dispatcher.py", line 617, in _run_async_func return await ExtensionManager.get_async_invocation_wrapper( File "/azure-functions-host/workers/python/3.8/LINUX/X64/azure_functions_worker/extension.py", line 147, in get_async_invocation_wrapper result = await function(**args) File "...
..., in create_dataset Dataset.Tabular.register_pandas_dataframe( File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/data/_loggerfactory.py", line 132, in wrapper return func(*args, **kwargs) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/data/dataset_factory.py", line 653, in register_pandas_dataframe dflow = dataprep().read_pandas_dataframe(df=sanitized_df, in_memory=True) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/readers.py", line 537, in read_pandas_dataframe return _read_in_memory_pandas_dataframe(df) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/readers.py", line 588, in _read_in_memory_pandas_dataframe read_df_step = Step('Microsoft.DPrep.ReadDataFrameFromSocketBlock', { File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/step.py", line 118, in init self.arguments = arguments if isinstance(arguments, PropertyValues) else PropertyValues.from_pod(arguments, _get_prop_descriptions(step_type)) File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/engineapi/typedefinitions.py", line 72, in _get_prop_descriptions descriptions = get_engine_api().get_block_descriptions() File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/engineapi/api.py", line 19, in get_engine_api _engine_api = EngineAPI() File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/engineapi/api.py", line 102, in init self._message_channel = launch_engine() File "/home/site/wwwroot/.python_packages/lib/site-packages/azureml/dataprep/api/engineapi/engine.py", line 333, in launch_engine dependencies_path = runtime.ensure_dependencies() File "/home/site/wwwroot/.python_packages/lib/site-packages/dotnetcore2/runtime.py", line 285, in ensure_dependencies if not attempt_get_deps(): File "/home/site/wwwroot/.python_packages/lib/site-packages/dotnetcore2/runtime.py", line 279, in attempt_get_deps raise NotImplementedError(err_msg + '\n' + _unsupported_help_msg) `

Hi SudoPete,
I would suggest you create a Custom container deployment on this scenario. Please refer following link for more info: https://docs.microsoft.com/en-us/azure/azure-functions/functions-create-function-linux-custom-image?tabs=in-process%2Cbash%2Cazure-cli&pivots=programming-language-python
Thanks

Hope this resolved your issue, please create a new issue if you face any concerns. Thanks

Creating a custom container doesn't resolve the issue @pdthummar as this just opens another can of worms.
When will this issue be resolved? It's disheartening investing time in the Azure Function V4 stack just to be told that a very common use case won't be doable with it and to just invest in some other stack.
If this issue won't be resolved a clear top-level disclaimer as to the shortcomings of this particular technology is necessary.


Convert script?

I found https://gist.github.com/sickill/504474702dd18c7dc0ec -- is this still needed? if so, would be nice to make a version that's easier to run (ideally something we can npm install and have work reproducibly. (the script calls for installing a bunch of libs for compiling libtsm).

This is still needed atm, but one of high priority tasks is implementing interpretation of the original (recorded) JSON format directly in the player, so this step won't be necessary. I don't have ETA for this but it will happen.

Here's a simple script that fetches the converted asciicast from asciinema.org, given the URL of the asciicast page and output filename: https://gist.github.com/sickill/3b12136b727e0f3163dc
Given that asciicasts on asciinema.org are private by default this may be reasonable, temporary solution.

thanks -- will publish a node pkg to do this easily for users.

@jbenet look at the README now, the player now (v2.0.0 just released) directly supports asciicast v1 format, without a need for any convert script.

Btw, I plan to add support for playback from ipfs:// URLs - it will automatically rewrite them to use the ipfs.io gateway (similar to cli which already supports that).


move AzGallery commands to VM Images

Docs Build status updates of commit 6d94389:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mapping/az-groupMapping-5.0.0.json
:white_check_mark:Succeeded

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

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

File
Status
Preview URL
Details

mapping/az-groupMapping-1.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-2.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-3.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.2.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.3.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.5.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.1.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.7.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-5.0.0.json
:white_check_mark:Succeeded

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

I've removed the extra spaces

Docs Build status updates of commit 369e739:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mapping/az-groupMapping-1.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-2.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-3.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.2.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.3.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.5.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.1.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.7.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-5.0.0.json
:white_check_mark:Succeeded

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

Docs Build status updates of commit 3f8b502:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mapping/az-groupMapping-1.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-2.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-3.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.2.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.3.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.5.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.6.1.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.7.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-4.8.0.json
:white_check_mark:Succeeded

mapping/az-groupMapping-5.0.0.json
:white_check_mark:Succeeded

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


Doesn't work with node 0.10

I just tried to deploy from node 0.10.x and it errored due to gulp-refresh.  We should remove that plugin and blacklist it for not having 0.10 support (ref https://github.com/gulpjs/gulp/issues/1829)

Closing this because the plugin page has been rewritten and integrated with our main website: https://github.com/gulpjs/gulpjs.github.io