Compiling SCSS files

I'm not sure if this should be Hugo related question or this specific theme. Does it run automatically when you run hugo? I am not sure.
Here's my problem. I add a scss file in the styles folder and import it in styles/main.scss. However, I don't see that file get build and I couldn't find how to compile scss files with Hugo Pipes on Hugo documentation. I remove all the files in the styles folder it doesn't do anything to the site. Is it related to the resources/_gen folder? How do I regenerate the content?
Thanks

Hi @apraditya
This theme is using PostCSS for styles build, you should install CLI  globally before change styles and build.
Here are some docs, may be useful for you.

Build Section
Hugo Pipes with PostCSS

Hi, @laozhu
Yes I am aware the theme is using PostCSS. Before posting this issue, I have PostCSS installed globally. I have read those Hugo docs. The docs just explain the config and the usage.
However, it doesn't answer my question. How does the CSS get built / generated? Is there a specific command, because hugo CLI doesn't seem to work in my case.

Hi @apraditya
I don't know why hugo CLI not work for you, but I start a new site with this theme and it works. below is my steps, hope these steps can help you.
$ hugo new site test
$ cd test/themes
$ git clone https://github.com/laozhu/hugo-nuo --depth=1
$ cd hugo-nuo

# Install dependences for PostCSS
$ npm install

$ cd ../..

# For development
$ hugo server
$ tree -L 2
.
├── archetypes
│   └── default.md
├── config.toml
├── content
├── data
├── layouts
├── resources
│   └── _gen
├── static
└── themes
    └── hugo-nuo

9 directories, 2 files

--

# For production build
$ hugo
$ tree public -L 2
public
├── 404.html
├── categories
│   ├── index.html
│   └── index.xml
├── images
│   ├── avatar.jpg
│   ├── favicon-16x16.png
│   ├── favicon-32x32.png
│   ├── favicon.ico
│   ├── grey-prism.svg
│   ├── tile-image-windows.png
│   ├── touch-icon-android.png
│   └── touch-icon-apple.png
├── index.html
├── index.xml
├── page
│   └── 1
├── scripts
│   └── index.min.js
├── sitemap.xml
├── styles
│   └── main.min.css
└── tags
    ├── index.html
    └── index.xml

7 directories, 18 files

Thanks for the quick response & demo @laozhu. It's definitely something's wrong with my hugo CLI. Here's what I have when running hugo server
$ tree -L 2
.
├── archetypes
│   └── default.md
├── config.toml
├── content
├── data
├── layouts
├── resources
├── static
└── themes
    └── hugo-nuo

8 directories, 2 files

So the resource/_gen didn't get created. Also, there are some warnings when running hugo server,
$ hugo server
Building sites … WARN 2018/12/12 06:42:03 Found no layout for "taxonomyTerm", language "en", output format "HTML": create a template below /layouts with one of these filenames: categories/terms.en.html.html, categories/list.en.html.html, categories/terms.html.html, categories/list.html.html, categories/terms.en.html, categories/list.en.html, categories/terms.html, categories/list.html, taxonomy/terms.en.html.html, taxonomy/list.en.html.html, taxonomy/terms.html.html, taxonomy/list.html.html, taxonomy/terms.en.html, taxonomy/list.en.html, taxonomy/terms.html, taxonomy/list.html, _default/terms.en.html.html, _default/list.en.html.html, _default/terms.html.html, _default/list.html.html, _default/terms.en.html, _default/list.en.html, _default/terms.html, _default/list.html
WARN 2018/12/12 06:42:03 Found no layout for "taxonomyTerm", language "en", output format "HTML": create a template below /layouts with one of these filenames: tags/terms.en.html.html, tags/list.en.html.html, tags/terms.html.html, tags/list.html.html, tags/terms.en.html, tags/list.en.html, tags/terms.html, tags/list.html, taxonomy/terms.en.html.html, taxonomy/list.en.html.html, taxonomy/terms.html.html, taxonomy/list.html.html, taxonomy/terms.en.html, taxonomy/list.en.html, taxonomy/terms.html, taxonomy/list.html, _default/terms.en.html.html, _default/list.en.html.html, _default/terms.html.html, _default/list.html.html, _default/terms.en.html, _default/list.en.html, _default/terms.html, _default/list.html
WARN 2018/12/12 06:42:03 Found no layout for "home", language "en", output format "HTML": create a template below /layouts with one of these filenames: index.en.html.html, home.en.html.html, list.en.html.html, index.html.html, home.html.html, list.html.html, index.en.html, home.en.html, list.en.html, index.html, home.html, list.html, _default/index.en.html.html, _default/home.en.html.html, _default/list.en.html.html, _default/index.html.html, _default/home.html.html, _default/list.html.html, _default/index.en.html, _default/home.en.html, _default/list.en.html, _default/index.html, _default/home.html, _default/list.html

However, on my actual site where I'm trying to update this theme, I don't get these warnings but don't get the CSS re-built. May be it's no longer scope to this theme so I'm closing this issue. Appreciate if you could give me some suggestions. I'm using hugo version v0.51 linux/386 BuildDate: 2018-11-07T10:10:13Z

You are welcome @apraditya
BTW, have you set the theme key to hugo-nuo  inconfig.toml file ?

Hi @apraditya, some update of this theme, I have removed PostCSS dependencies, now you don't need to install it and their plugins.


Data shuffle problem

Reminder

[X] I have read the README and searched the existing issues.

Reproduction
I read workflow.py, and saw dataset get once by using get_dataset() and split_dataset() is used during initializing trainer. If I changed split_dataset() and remove shuffle part in this function, will the training data still be shuffled for training during every epoch?
Expected behavior
No response
System Info
No response
Others
No response

the dataset will be shuffled by the huggingface trainer


Can we run visualization code without evaluation and using self vocab list?

Thanks for the amazing work and I'm really excited about that! Currently, I am trying to run the inference with your pretrained-model but had a question that if I can run visualization with prediction without the evaluation part. Is that possible in current codebase?

@FrankFcc Thank you for your interest! Yes, we have a Colab demo here to help you run the demo without the evaluation. Please check out: https://colab.research.google.com/drive/12x7v-_miN7-SRiziK3Cx4ffJzstBJNqb?usp=sharing#scrollTo=BtMdw_J6PprI. A huggingface Gradio demo is still under preparation, but will be released soon.

Hi @Haotian-Zhang ,
Thanks you so much for your quick response. I've already utilized your demo code on Colab and it did give us some promising predictions. Then, I'm currently trying to use pretrained model via GLIP in our own cluster and also trying to set up a possible pipeline to our own custom data vocab and frame.  As a result, I wonder if GLIP team already had some built-in functions like inside visualize_grounding_net.py to skip the evaluation process and allow process lots of images with our own GPUs to perform speed check or visualize result.
Thanks you so much for spending time reading my issue and I hope my question won't waste you so many time.

Hi @FrankFcc, if you check about the demo in detail. It is indeed a well-built pipeline to feed in your custom images and texts and then visualize the outputs. I can point to the https://github.com/microsoft/GLIP/blob/c5063c2fbff0482d5c6df7ac801ffd2921923e70/maskrcnn_benchmark/engine/predictor_glip.py#L27. Please take a look at this class and the function https://github.com/microsoft/GLIP/blob/c5063c2fbff0482d5c6df7ac801ffd2921923e70/maskrcnn_benchmark/engine/predictor_glip.py#L134 is what you need.


ci: Add job to fail on changes to generated icons

This adds a job that runs when packages/boxel-ui changes, it fails if the output of pnpm rebuild:icons results in any diffs (using this technique), which indicates that a generated icon component was changed without the underlying raw icon being the source. This prevents the need for #1135.
You can see an example failure here after I changed a generated icon component.

⚠ not ready to merge, I just realised that removing the filter so change-check runs always instead of only on merges to main has caused this branch to be deployed to staging!

I’ll see if change-check and its dependencies can be adapted, but I may decide to just run the job every time, it takes under 30 seconds.
The job can still be reviewed, the if is the thing in question.


Phala World Fixes

Targets

[x] Change ZeroDay Timestamp to be at 00:00:00 UTC when initialize_world_clock is executed by Overlord
[x] Update OriginOfShellType to RarityType
[x] Add generation attribute for Origin of Shell and Shell NFTs
[x] Limit Preorders per account

Don't know why CI fail because disk is full, I merge this first since the code LGTM, I'm double check in my local, then reset the testnet


resin local push taking too long to get from "Building new..." to "Step 1"

As reported by user, the cli seemed stuck for a long time (30 minutes). There were no logs attached, and one theory is hat the build context directory was huge, in which case we should document this better.
Reported for a NUC device
 Front conversations

Could this build step be rightfully taking a lot of time because of some reason? If so (and maybe even if this is not the case), can we make the CLI periodically output something (even a spinner) so the user knows that is something happening, and the CLI is not stuck?

Related to #1421, #707


Release 1.5.24

This PR updates the version of the plugin to 1.5.24.
This includes updating the config module and updating to the freshest Spine libraries.

@armiol, PTAL.


Add component descriptors

Coverage remained the same at 100.0% when pulling c59c00eafec19001ce7c559a22f449d0099345d5 on descriptors into 6883eb02c6f708334e9bd0eeac442c1b047ee03d on main.


[Question]: How to add previous Chat context when querying an index?

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
I am looking for a way to send the context of my chat application to Llama index via the .query() function but it seems like it only accepts a string:
streaming_response = index.as_query_engine(
        streaming=True, similarity_top_k=1
    ).query(query_text)

I would like to know how I can make it so Llama understands the context of my chats like I can do with OpenAI:
openai.ChatCompletion.create(
  model="gpt-3.5-turbo",
  messages=[
        {"role": "system", "content": "You are a helpful assistant."},
        {"role": "user", "content": "Who won the world series in 2020?"},
        {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
        {"role": "user", "content": "Where was it played?"}
    ]
)

Any tips on how I can achieve this using the Llama API? Thanks.

@mcmoochi the context chat engine CAN be restrained, you just have to write a system prompt that encourages that behaviour. Tbh the system prompt is powerful if written well.
Other options include the

condense question chat engine (will query the index every time, but can lead to some "forced" logic/conversation)
an agent with an index as a tool. Since the agent decides when to invoke the query engine, this is maybe less controlled, but...
an agent with forced tool calling -- you can setup an agent and force it to use a tool every time. Again, this can feel forced.

@mcmoochi the context chat engine CAN be restrained, you just have to write a system prompt that encourages that behaviour. Tbh the system prompt is powerful if written well.
Other options include the

condense question chat engine (will query the index every time, but can lead to some "forced" logic/conversation)
an agent with an index as a tool. Since the agent decides when to invoke the query engine, this is maybe less controlled, but...
an agent with forced tool calling -- you can setup an agent and force it to use a tool every time. Again, this can feel forced.

Thanks very much for the response. I have tried the system prompt, it doesn't seem to be working for me for some reason.
For example, I'm passing this system prompt: "Don't answer if question is not directly related to [My company]." and using. "how to cook a potato" as a control question. My index only consist of terms of conditions of products, currently the bot will give a detailed response on how to cook a potato...
Condense question seems to do the same thing, not sure if I'm doing something wrong. I'll try the agent forced too calling. Any help would be greatly appreciated!
Here are my codes:
custom_prompt = """
    Act friendly and charming \
    say 'I don't know' if question is not directly related to [my company]. \
    Make your responses short and concise. \
    If the question is not specific, ask for more information. \
    Use Australian english spelling and grammar. \
"""

def construct_index(directory_path):
    num_outputs = 512
    llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.7, model_name="text-davinci-003", max_tokens=num_outputs))
    service_context = ServiceContext.from_defaults(llm_predictor=llm_predictor)
    docs = SimpleDirectoryReader(directory_path).load_data()
    index = GPTVectorStoreIndex.from_documents(docs, service_context=service_context, summary_template=custom_ft_prompt)
    index.storage_context.persist(persist_dir='index.json')
    return index

    def respond(message, chat_history):
        storage_context = StorageContext.from_defaults(persist_dir="index.json")
        index = load_index_from_storage(storage_context)
        chat_engine = index.as_chat_engine(
            chat_mode="condense_question", memory=memory)
        response=chat_engine.chat(message)
        ##appending message history
        bot_message = str(response)
        chat_history.append((message, bot_message))
        return "", chat_history

@logan-markewich When using the chat engine instead of the query engine, don’t you lose the ability to also use the data as context? It also does not look like the chat engine supports streaming like the query engine does with streaming=True.

@niels-bosman nope, you still get the data as context. Each chat engine uses the index under the hood in slightly different ways
Also, with chat engines, streaming is enabled by using specific endpoints -- chat_engine.stream_chat() and chat_engine.astream_chat
Then, you can iterate over the response
Going to link some docs pages that relevant, but I think it's safe to close this for now. Feel free to reach out on discord!
https://gpt-index.readthedocs.io/en/latest/core_modules/query_modules/chat_engines/usage_pattern.html
https://gpt-index.readthedocs.io/en/latest/examples/agent/openai_agent.html#streaming-chat


Fix Blob.Created trigger to only handle Blob.Created events

Related to #3795
Update the airlock_processor/BlobCreatedTrigger/function.json to remove the binding for Blob.Deleted events.

Remove the dataDeletionEvent binding from the airlock_processor/BlobCreatedTrigger/function.json file.
Update the CHANGELOG.md to include the bug fix for the issue "Delete of in-progress container is triggered twice" (#4035).

For more details, open the Copilot Workspace session.

Increment version

Update version from 0.7.1 to 0.7.2

For more details, open the Copilot Workspace session.

/test-extended

/test

/test

/test

@tim-allen-ck  looks liek a bug in this PR, sorry.
Getting:
Result: Failure Exception: FunctionLoadError: cannot load the BlobCreatedTrigger function: the following parameters are declared in Python but not in function.json: {'dataDeletionEvent'} Stack: File "/azure-functions-

Suggest we revert for the next release, then dig deeper.


nixos/smokeping: drop dangling fping6 suid swapper

After recent change services.smokeping.enable = true; system
started failing the build as:
nixpkgs-master $ nix build --no-link -f nixos system --keep-going
...
Checking that Nix store paths of all wrapped programs exist... FAIL
The path /nix/store/kr2sr80g9ny74im6m6dyh9v44hnzm261-fping-5.0/bin/fping6 does not exist!
Please, check the value of `security.wrappers."fping6".source`.

fping does not provide fping6 binary for a while. Let's just remove it.
Closes: https://github.com/NixOS/nixpkgs/issues/138581
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages 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/)
21.11 Release Notes (or backporting 21.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@ofborg eval

I think this will need to be manually backported to 21.05?  There's no fping6 there either.

As long as 7d8b303e3fd76ccf58cfe26348e889def3663546 isn't backported, nothing breaks on 21.05, as the check only was introduced recently.


Lack of control over delete leads to some weird scenarios

Consider the following scenario:
I have some entities in a store, and deleting those entities from the tree should also delete them from the store. However, I might need to validate that they can be deleted, and if not, display some error notification stating such. If the node can't be deleted, I'd like to not focus on the next sibling.
https://github.com/brimdata/react-arborist/assets/864752/23fa7e67-aaef-4929-8710-cc8feac19cc9
Next, lets say I hit delete on the last node. It wraps around to the root node, that has no siblings, but only children. If I were to hit delete again, all selection is lost, and the focus remains on the root node because the logic cant find the next node to focus on
https://github.com/brimdata/react-arborist/assets/864752/67a4d1f2-5576-4234-aed2-1eb2af781c3f
Lastly, it's not immediately obvious to me how I can manage focused state in this scenario: I attempt to delete a "forbidden" node, display a notification, and when the notification disappears a rerender happens. When this happens, the focus state resets to next sibling of the node that I was attempting to delete.
I have a couple thoughts here, wanted to see what if this makes sense to you.

I could create my own tree container, and pass it to the renderContainer. However, the internal components used by the default container aren't exported. This means I'd have to recreate those.
Perhaps we could add a prop, something to the effect of onDeleteOverride, whereby the full behavior of delete could be controlled. We could check for this prop in the default container, and if present, do not run the default backspace event handler. Rather, we'd just invoke whatever was passed in the prop.

Curious if you have any thoughts on a these suggestions or other directions this could go :)

Thanks for taking the time to makes these videos and explain what problems you're facing. This makes sense to me. In the next version I plan to allow custom "commands" to be registered on the tree. It could be used like this... (psudo-code). Then along with shortcuts, it could work something like this. What do you think?
const commands = {
  "deleteIfAllowed": (tree) => {
     const node = tree.focused()
     // if it cannot be deleted do nothing with the focus.
  }
}

const shortcuts = {
  "Backspace":  "deleteIfAllowed"
}

<TreeView
  commands={commands}
  shortcuts={shortcuts}
/>

All those event handlers in "defaultContainer" are going to be turned into commands with names that can be overridden. Much like your suggestion number 2.
I'm working on this today actually.


games doesnt start in any collection

here a demostration:
https://youtu.be/aXjYOe2Rkd4
i am using the 1.0.1

Please download 1.0.2, its fixed there.
There si still a bug with the search in 1.0.2 , so you might want to wait for 1.0.3

Hi, 1.0.3 is available, please download it!
https://github.com/dragoonDorise/RP-Switch/releases/tag/1.0.3

downloading 1.0.3 thanks a lot :D


Wrong formatting when displaying code blocks

What happened?
Hi! After latest update 2.6.1-241 there is an issue with formatting code blocks in the answer

The problem seen on Ubuntu 22.04 and MacOS Sonoma. PyCharm 2024.1 (Build #PY-241.14494.241, built on March 28, 2024)
Relevant log output or stack trace
No response
Steps to reproduce
Ask code gpt to generate some code
CodeGPT version
2.6.1-241
Operating System
None

Hi, thanks for reporting!
I am aware of this issue and have already published a fix for it (2.6.2). However, it is behind a waitlist, so it might take up to 2 days before it becomes publicly available. In the meantime, you could downgrade it back to 2.6.0. I have already unpublished it on the marketplace as well. Sorry for the trouble.

Thank you for a quick response! I'll close the issue then


Clarification of Outbound policies with WS Conn.

Clarification that outbound policies only work with the HTTP Connector, and not with the Web Service Connector.

Hi @jrhuerga,
Thank you for opening this PR!
I discussed this with the engineering team, and it was agreed that we shouldn't mention connectors other than the HTTP Connector. The other connectors are intentionally not included, as the documentation focuses on the main use case.
Regards,
Chris Campbell

Thank you for your feedback.
On Wed, May 19, 2021 at 9:41 PM chris-campbell9 @.***>
wrote:

Hi @jrhuerga https://github.com/jrhuerga,
Thank you for opening this PR!
I discussed this with the engineering team, and it was agreed that we
shouldn't mention connectors other than the HTTP Connector. The other
connectors are intentionally not included, as the documentation focuses on
the main use case.
Regards,
Chris Campbell
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mulesoft/docs-api-manager/pull/338#issuecomment-844413036,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEJW5C3HX2RQ6HJWG7TNPWDTOQH5TANCNFSM4YPJ5X2Q
.

--


Bug with doodler movement - Unity 2017 and later

Hello,
I want to convert your project to unity 2017 or later and i can't resolve a bug in player movement / box collider.
I don't understand what is going wrong.
Works fine with 5.5 version of Unity.
Thanks a lot for your help.

Found.
in platform.cs
REPLACE :
// Add force when player fall from top
if (-Other.relativeVelocity.y <= 0f)
BY:
// Add force when player fall from top
if (Other.relativeVelocity.y <= 0f)


Replace WMIC call with a supported solution

WMIC is deprecated and has been for some time.  Currently it is used for determining if any integrated terminal instances have any child processes.
https://github.com/microsoft/vscode/blob/25d1c0b0eba587f9f4e6bf825770b547c6703e52/src/vs/workbench/contrib/debug/node/terminals.ts#L55
There are PowerShell commands that can return the count of child processes given a parent process ID, but I'm not sure what the performance hit for using PowerShell would be.

Windows doesn't maintain strong parent/child process relationships, so the design here needs some more thinking.
If you're feeling gangster, you can call NtQueryInformationProcess with PROCESS_BASIC_INFORMATION and dig out the undocumented InheritedFromUniqueProcessId member.
But I wouldn't bother, because you then need to consider the process ID can be recycled at any time.

Thanks for all the help @riverar !


Media queries not output in the right order

The new Grid Breakpoints don't always render in the correct order. For example this is the output I get for breakpoints:
{
xs: "+10",
lg: "+1000",
xl: "+1301"
};
@media (min-width:1000px){STYLES}}
@media (min-width:10px){STYLES}
@media (min-width:1301px){STYLES}

Because they are not output in the right order it means that the styles for breakpoint 1000px are never able to be used/applied due to css always using the last values in the css.

@georgeevans1995 I cant consistently recreate this. Let's chat about it tomorrow.

@georgeevans1995 if possible, can you create a codesandbox demo of the problem? I haven't personally run into that issue

closing inactive issue, reopen if you want to continue the discussion


METRON-1830: Re-implement Alerts dialog box without jQuery

Contributor Comments
Link to METRON-1830 on ASF JIRA
Previously, the dialog box class in both UIs directly manipulated the DOM with jQuery. This is problematic when using a framework like Angular because it causes a disconnect with how Angular handles and tracks DOM changes. We also don't take advantage of Angular's rendering engine this way.
In this PR, I created a dialog component and service. When a component in the application needs to launch a dialog modal, they simply call a method on the singleton dialog service which determines if the dialog component should show/hide, what message to display and what type of message it is (ie Confirmation, Error, etc).
Changes Included

Create a dialog component.
Create a singleton service so that we aren't creating a new instance every time we include a dialog in a component.
Add unit tests for both the service and component.
Replace all MetronDialogBox class references with the DialogService.
Remove the old MetronDialogBox.

Testing
You can test and see the dialog menu in the following areas of the application:

Creating a meta alert from a group in the tree view.
Adding/removing an alert from a meta alert in the table view.
Saving a search.
Adding a comment to an alert.

It should behave just like it did before. If it's displaying an error message, there should only be an 'ok' button, which simply closes the dialog window.

If there is a confirmation message, there should be an 'ok' button, which executes the desired behavior ie. creating a meta alert, and a 'cancel' button, which does not execute the desired behavior and closes the dialog.

To look at the test coverage, run ng test --code-coverage, navigate to the new coverage directory inside the project, and inside the folder open the index.html file. From there you can find the reports for the dialog service and component. Screenshots below for reference.

Pull Request Checklist
Thank you for submitting a contribution to Apache Metron.
Please refer to our Development Guidelines for the complete guide to follow for contributions.
Please refer also to our Build Verification Guidelines for complete smoke testing guides.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?

[x] Have you included steps or a guide to how the change may be verified and tested manually?

[ ] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
mvn -q clean integration-test install && dev-utilities/build-utils/verify_licenses.sh

[x] Have you written or updated unit tests and or integration tests to verify your changes?

[x] N/A If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

[ ] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered by building and verifying the site-book? If not then run the following commands and the verify changes via site-book/target/site/index.html:
cd site-book
mvn site

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
It is also recommended that travis-ci is set up for your personal repository such that your branches are built there before submitting a pull request.

@tiborm In regard to the 'Initial' state check, I was able to do what you suggested but only after switching from a BehaviorSubject to a Subject. I did this because Subjects do not return the current value on Subscription. It only triggers with the .next() call and returns the value you pass there. That was a really great suggestion on your part and made me realize I was using the wrong tool for the job.
I also made changes based on the rest of your feedback, but they were straightforward and do not need further explanation here. Thanks for taking the time to review my PR!

Thanks, Shane. +1

Looks good to me @sardell.  +1


optimize.minimize ftol not working

I'm using the following function:
result=optim.minimize(fun,x0,method='SLSQP',options={'eps': 0.0001, 'ftol': 1000},bounds=[(0,0.01)],args=(file,)).
Fun is a normalized costing function that produces values of about 1.28e-4. I've tried values of ftol ranging from 1000-1e-4 and the optimizer doesn't converge. I can't understand why. From the documentation, xtol can't be set, so this can't be the reason for this. I'm not sure if this is an error to do with the minimize function or whether this is me misusing the function.

@James-Ilosta I would suggest starting by posting this question on Stack Overflow. You will probably get better help there, since this sounds like to it could be a usage question, but this is a forum for bug reports and enhancement requests.
Please consider posting there with some additional information:

Have you tried solving the problem with the default tolerances? Other methods?
Is the objective function smooth?
How many variables are there?

If possible, I'd also suggest posting the complete code so that others can help debug.
If you determine that this is a bug, please come back here and post code that reproduces the problem.

Hi @James-Ilosta - I will close as we are unable to reproduce with the information provided, but feel free to reopen if you can give a minimal reproducible example (mwe). Cheers!


Cleanup python script to rename project

Why is this important?
My OCD couldn't handle this ;)

🐍 van mij ook ;)


Fix our impact section to be friendly on all screen sizes

:+1:
--
Zach Latta
Executive Director of hackEDU https://hackedu.us
http://zachlatta.com
https://github.com/zachlatta
https://twitter.com/zachlatta
On Mon, Jul 27, 2015 at 8:16 AM, Max Wofford<EMAIL_ADDRESS>wrote:

[image: screenshot 2015-07-27 at 8 15 23 am]
https://cloud.githubusercontent.com/assets/5891442/8909719/c811ff9c-3437-11e5-9865-8d6fc5e8bf6d.png
—
Reply to this email directly or view it on GitHub
https://github.com/hackedu/website/issues/138.


Lisp error: (void-variable org-directory)

Observed behavior
Org related errors occur at startup.
Also, some org file's format is broken, possibly due to the errors mentioned above.
Expected behavior
No errors occur at startup.
Steps to reproduce

Start Emacs
Open some org files

Extra details

I could only copy the stacktrace at the last error, which happened when I opened org file.

Debugger entered--Lisp error: (void-variable org-directory)
  (list org-directory)
  (setq org-agenda-files (list org-directory))
  (if org-agenda-files nil (setq org-agenda-files (list org-directory)))
  +org-init-agenda-h()
  run-hooks(org-load-hook)
  byte-code("\300\301\302\"\210\303\304!\210\305\306!\207" [add-hook org-mode-hook #f(compiled-function () #<bytecode 0x43afc371>) provide org run-hooks org-load-hook] 3)
  require(org)
  byte-code("\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312!\207" [require avl-tree cl-lib ol org org-compat org-entities org-footnote org-list org-macs org-table] 2)
  org-element-at-point()
  org--setup-collect-keywords("^[ \011]*#\\+\\(\\(?:ARCHIVE\\|C\\(?:ATEGORY\\|O\\(?:\\(?:LUMN\\|NSTANT\\)S\\)\\)\\|FILETAGS\\|LINK\\|OPTIONS\\|PR\\(?:IORITIES\\|OPERTY\\)\\|S\\(?:E\\(?:Q_TODO\\|TUPFILE\\)\\|TARTUP\\)\\|T\\(?:AGS\\|\\(?:YP_T\\)?ODO\\)\\)\\):[ \011]*\\(.*\\)")
  org-set-regexps-and-options()
  org-mode()
  set-auto-mode-0(org-mode nil)
  #f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>)()
  apply(#f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>) nil)
  #f(advice-wrapper :after #f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>) auto-minor-mode-set)()
  apply(#f(advice-wrapper :after #f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>) auto-minor-mode-set) nil)
  so-long--set-auto-mode(#f(advice-wrapper :after #f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>) auto-minor-mode-set))
  apply(so-long--set-auto-mode #f(advice-wrapper :after #f(compiled-function (&optional keep-mode-if-same) "Select major mode appropriate for current buffer.\n\nTo find the right major mode, this function checks for a -*- mode tag\nchecks for a `mode:' entry in the Local Variables section of the file,\nchecks if it uses an interpreter listed in `interpreter-mode-alist',\nmatches the buffer beginning against `magic-mode-alist',\ncompares the filename against the entries in `auto-mode-alist',\nthen matches the buffer beginning against `magic-fallback-mode-alist'.\n\nIf `enable-local-variables' is nil, or if the file name matches\n`inhibit-local-variables-regexps', this function does not check\nfor any mode: tag anywhere in the file.  If `local-enable-local-variables'\nis nil, then the only mode: tag that can be relevant is a -*- one.\n\nIf the optional argument KEEP-MODE-IF-SAME is non-nil, then we\nset the major mode only if that would change it.  In other words\nwe don't actually set it to the same mode the buffer already has." #<bytecode 0x400b619f>) auto-minor-mode-set) nil)
  set-auto-mode()
  normal-mode(t)
  #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>)(nil t)
  apply(#f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) (nil t))
  #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h)(nil t)
  apply(#f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) (nil t))
  (if (setq doom-large-file-p (and buffer-file-name (not doom-large-file-p) (file-exists-p buffer-file-name) (condition-case nil (progn (> (nth 7 (file-attributes buffer-file-name)) (* 1024 1024 (assoc-default buffer-file-name doom-large-file-size-alist ...)))) (error nil)))) (prog1 (apply orig-fn args) (if (memq major-mode doom-large-file-excluded-modes) (setq doom-large-file-p nil) (if (fboundp (quote so-long-minor-mode)) (progn (so-long-minor-mode 1))) (message "Large file detected! Cutting a few corners to improve performance..."))) (apply orig-fn args))
  doom--optimize-for-large-files-a(#f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) nil t)
  apply(doom--optimize-for-large-files-a #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) (nil t))
  #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a)(nil t)
  apply(#f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h) doom--after-call-ws-butler-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h) doom--after-call-ws-butler-h) (nil t))
  #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h) doom--after-call-ws-butler-h) doom--after-call-git-commit-h)(nil t)
  apply(#f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :before #f(advice-wrapper :around #f(advice-wrapper :before #f(compiled-function (&optional error warn noauto after-find-file-from-revert-buffer nomodes) "Called after finding a file and by the default revert function.\nSets buffer mode, parses file-local and directory-local variables.\nOptional args ERROR, WARN, and NOAUTO: ERROR non-nil means there was an\nerror in reading the file.  WARN non-nil means warn if there\nexists an auto-save file more recent than the visited file.\nNOAUTO means don't mess with auto-save mode.\nFourth arg AFTER-FIND-FILE-FROM-REVERT-BUFFER is ignored\n(see `revert-buffer-in-progress-p' for similar functionality).\nFifth arg NOMODES non-nil means don't alter the file's modes.\nFinishes by calling the functions in `find-file-hook'\nunless NOMODES is non-nil." #<bytecode 0x400b59bb>) doom--after-call-paren-h) doom--optimize-for-large-files-a) doom--after-call-recentf-h) doom--after-call-saveplace-h) doom--after-call-smartparens-h) doom--after-call-so-long-h) doom--after-call-ws-butler-h) doom--after-call-git-commit-h) (nil t))
  after-find-file(nil t)
  find-file-noselect-1(#<buffer table_abc.org> "~/Projects/OtherProjects/reference/c++/table_abc.org" nil nil "~/Projects/OtherProjects/reference/c++/table_abc.org" (14285643 16777228))
  find-file-noselect("~/Projects/OtherProjects/reference/c++/table_abc.org" nil nil nil)
  find-file("~/Projects/OtherProjects/reference/c++/table_abc.org")
  #f(compiled-function (f) #<bytecode 0x43b69a59>)("~/Projects/OtherProjects/reference/c++/table_abc.org")
  ivy-call()
  ivy-read("Recentf: " ("~/.emacs.d/.local/etc/workspaces/autosave" "~/12step/" "~/Projects/OtherProjects/reference/c++/table_abc.org" "~/.doom.d/config.el" "~/Projects/OtherProjects/reference/c++/competitive_programming.org" "~/Projects/OtherProjects/reference/" "~/Projects/OtherProjects/reference/c++/iterator.org" "~/Projects/OtherProjects/reference/c++/table_abc_archived_3.org" "~/Projects/OtherProjects/reference/c++/table_abc_archived_2.org" "~/Projects/SqlProjects/sql_exercises/table_sql.org" "~/Projects/SqlProjects/sql_exercises/011/problem.org" "~/Projects/OtherProjects/reference/c++/table_abc_archived.org" "~/Projects/OtherProjects/reference/c++/" "~/Projects/ElispProjects/exercises/table_elisp.org" "~/Projects/ElispProjects/exercises/table_sql.org" "~/Projects/SqlProjects/sql_exercises/010/problem.org" "~/Projects/OtherProjects/reference/projects/12steps_to_building_an_os.org" "~/Projects/OtherProjects/reference/java/jenv.org" "~/.emacs.d/modules/lang/org/config.el" "~/.doom.d/packages.el" "~/Projects/CppProjects/ABC/104/C/a.cpp" "~/.emacs.d/.local/cache/recentf" "~/.doom.d/init.el" "~/Projects/CppProjects/AOJ/ALDS1/5/B/a5.cpp" "~/Projects/CppProjects/AOJ/ALDS1/5/B/" "~/Projects/CppProjects/AOJ/ALDS1/5/B/a.cpp" "~/.doom.d/" "~/12step/vagrant/Vagrantfile" "~/12step/vagrant/" "~/12step/vagrant/authorized_keys" "~/" "~/Projects/" "~/Projects/SqlProjects/" "~/Projects/SqlProjects/sql_exercises/" "~/Projects/SqlProjects/sql_exercises/011/a.sql" "~/Projects/SqlProjects/sql_exercises/011/template.sql" "~/Projects/SqlProjects/sql_exercises/011/" "~/Projects/SqlProjects/sql_exercises/005/" "~/Projects/SqlProjects/sql_exercises/010/" "~/Projects/CppProjects/AOJ/" "~/Projects/CppProjects/AOJ/ALDS1/" "~/Projects/CppProjects/AOJ/ALDS1/3/" "~/Projects/CppProjects/AOJ/ALDS1/3/B/a1.cpp" "~/Projects/CppProjects/AOJ/ALDS1/3/B/a.out.dSYM/" "~/Projects/CppProjects/AOJ/ALDS1/3/B/a.out" "~/Projects/CppProjects/AOJ/ALDS1/3/B/a.cpp" "~/Projects/CppProjects/AOJ/ALDS1/3/B/" "~/Projects/ElispProjects/exercises/003/a.el" "~/Projects/ElispProjects/exercises/003/" "~/Projects/ElispProjects/exercises/002/a1.el" ...) :action #f(compiled-function (f) #<bytecode 0x43b69a59>) :require-match t :caller counsel-recentf)
  counsel-recentf()
  funcall-interactively(counsel-recentf)
  call-interactively(counsel-recentf nil nil)
  command-execute(counsel-recentf)

bin/doom info

~/.emacs.d [develop] λ ./bin/doom info
WARNING (:tools flycheck) module was moved to (:checkers syntax)
((emacs
  (version . "26.3")
  (features . "NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS MODULES THREADS LCMS2")
  (build . "12 04, 2019")
  (buildopts "--with-mac --enable-mac-app=/Users/travis/build/railwaycat/homebrew-emacsmacport/build-scripts/emacs-source/tmproot --prefix=/Users/travis/build/railwaycat/homebrew-emacsmacport/build-scripts/emacs-source/tmproot --enable-mac-self-contained --with-modules")
  (windowsys . batch)
  (daemonp . server-running))
 (doom
  (version . "2.0.9")
  (build . "HEAD -> develop 30dea4bf0 2020-04-25 02:55:06 -0400")
  (dir . "~/.doom.d/"))
 (system
  (type . darwin)
  (config . "x86_64-apple-darwin18.5.0")
  (shell . "/bin/bash")
  (uname . "Darwin 18.7.0 Darwin Kernel Version 18.7.0: Mon Feb 10 21:08:45 PST 2020; root:xnu-4903.278.28~1/RELEASE_X86_64 x86_64")
  (path "~/12step/tools/bin" "~/.jenv/shims" "~/.jenv/bin" "/usr/local/bin" "/usr/bin" "/bin" "/usr/sbin" "/sbin" "/opt/X11/bin" "/Applications/Emacs.app/Contents/MacOS/libexec" "/Applications/Emacs.app/Contents/MacOS/bin"))
 (config
  (envfile . envvar-file)
  (elc-files . 0)
  (modules :completion company ivy :ui doom doom-dashboard doom-quit hl-todo modeline nav-flash ophints (popup +all +defaults) treemacs vc-gutter vi-tilde-fringe window-select workspaces :editor (evil +everywhere) file-templates fold multiple-cursors rotate-text snippets :emacs dired electric vc :term eshell :tools eval :checkers syntax :tools (lookup +docsets) magit :lang cc data emacs-lisp (org +dragndrop +ipython +pandoc +present) sh :config (default +bindings +smartparens))
  (packages (pdf-tools) (super-save) (ejc-sql) (sqlformat) (docker-tramp) (dockerfile-mode) (docker) (ripgrep) (undo-fu) (request) (aio) (vagrant-tramp))
  (unpin "n/a")
  (elpa "n/a")))

captured error image at starup.

I'm not familiar with emacs or computers in general... sorry if I made some noob mistakes.
Thanks for keeping up the great project

Duplicate of the issue #2968 .


Show player name using the 7d!players command

Could you please add a player list when using the 7d!players command? That would be awesome. Thanks :)

I'm closing out feature requests to keep this issue tracker for strictly bugs and support. Feel free to bring further discussion to the Discord.


feat(cron): add support for "*/n" interval cronjob syntax

Currently KVRocks only supports integers and * in crontab format. I thought it would be nice to add support for the */n interval syntax. I understand that we can already add multiple crontab entries for the same feature like this:
bgsave-cron 0 3 * * * 0 6 * * * (and more...)

But it would be convenient if we could do something like this instead:
bgsave-cron 0 */3 * * *

Again, I'm new to C++ so no offense taken if the code provided is not good at all for your standards. The "month" part was a pain to do and I'm not sure about it. I used https://crontab.guru/#0__*/4* to calibrate my code/tests for this.

@PragmaTwice Thanks for your suggestions, I updated the code

@PragmaTwice Thanks, updated again the code

I added more tests for non interval syntax and renamed the min_val parameter


#[18] Chat

Codecov Report
Attention: Patch coverage is 0% with 456 lines in your changes missing coverage. Please review.

Project coverage is 6.71%. Comparing base (2327722) to head (e3da468).
Report is 37 commits behind head on main.

Files with missing lines
Patch %
Lines

crates/framework/src/features/chat.rs
0.00%
293 Missing :warning:

crates/framework/src/structs/chats/chat_id.rs
0.00%
10 Missing :warning:

crates/framework/src/structs/updates/message.rs
0.00%
2 Missing :warning:

crates/framework/src/enums/background_fill.rs
0.00%
1 Missing :warning:

crates/framework/src/enums/background_type.rs
0.00%
1 Missing :warning:

crates/framework/src/enums/chat_boost_source.rs
0.00%
1 Missing :warning:

crates/framework/src/enums/chat_member.rs
0.00%
1 Missing :warning:

.../framework/src/enums/maybe_inaccessible_message.rs
0.00%
1 Missing :warning:

crates/framework/src/enums/message_result.rs
0.00%
1 Missing :warning:

crates/framework/src/enums/paid_media.rs
0.00%
1 Missing :warning:

... and 144 more

Additional details and impacted files

Files with missing lines
Coverage Δ

...ramework/src/structs/updates/chat_boost_updated.rs
0.00% <ø> (ø)

...framework/src/structs/updates/chat_join_request.rs
0.00% <ø> (ø)

...amework/src/structs/updates/chat_member_updated.rs
0.00% <ø> (ø)

crates/framework/src/enums/background_fill.rs
0.00% <0.00%> (ø)

crates/framework/src/enums/background_type.rs
0.00% <0.00%> (ø)

crates/framework/src/enums/chat_boost_source.rs
0.00% <0.00%> (ø)

crates/framework/src/enums/chat_member.rs
0.00% <0.00%> (ø)

.../framework/src/enums/maybe_inaccessible_message.rs
0.00% <0.00%> (ø)

crates/framework/src/enums/message_result.rs
0.00% <0.00%> (ø)

crates/framework/src/enums/paid_media.rs
0.00% <0.00%> (ø)

... and 147 more

... and 8 files with indirect coverage changes


created food lists

Hi @olanikegloria   ,
Your project is complete! There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉


My logs from troubleshooting

File: [desktop/mac/troubleshoot.md](https://docs.docker.com/desktop/mac/troubleshoot/

)

Self-diagnose too

l


remove target="_blank"

fixed #2

This turns out to be reloading the whole page. Spotify uses react so will have to use React Router.

This won't be possible with that either.


Clarification on HostSNI removal

Do you want to request a feature or report a bug?

Bug

In the migration docs here :
HostSNI rule matcher removal¶
In v2.2.2 we introduced a new rule matcher (HostSNI) which was allowing to match the Server Name Indication at the router level. Since v2.2.5 this rule has been removed, and you should not use it anymore.

In creating a TCP router, using Host('*') results in:
time="2020-08-30T16:31:34Z" level=error msg="unknown rule Host(`pihole.cluster.local`)" entryPointName=dns routerName=default-pihole-dns-a2be5f
1a3e4fc38e3759@kubernetescrd

The error disappears if i use HostSNI but the docs say that it's removed.
HostSNI is also referenced in the v2.3 docs here
What did you do?

What did you expect to see?
An error using HostSNI and no error using Host
What did you see instead?
An error using Host and no error using HostSNI
Output of traefik version: (What version of Traefik are you using?)

± kubectl exec -it traefik-85d7c864fb-hw64j traefik version
Version:      2.3.0-rc4
Codename:     picodon
Go version:   go1.15
Built:        2020-08-19T16:02:03Z
OS/Arch:      linux/arm64
What is your environment & configuration (arguments, toml, provider, platform, ...)?
no relevant

Closed by #7237.


Python: Add toString information for all classes without such.

Having toString() defined to be none() is a major headache when debugging,
as toString-less results are silently elided. This PR puts dummy toStrings
in place of the none()s.
(I am mostly creating this to see if it impacts our tests and/or the
performance. If not, we may as well merge it.)

No impact on performance or alerts: https://git.semmle.com/gist/taus/664814474a8c734024176b483b4a7413


Add annotation tools

The fetch_vep_cache_data does not seem to be installed. I think it might be outdated...


destination commands

Is your feature request related to a problem? Please describe.
Currently, only events are pushed to the destinations, but no commands. Pushing commands, too, would level them up.
Describe the solution you'd like
Add an optional command function like pushBatch to destinations and share a user's will.

Works with on events already.


Chat bot search commands

E.g. "open:today", "zip:87111"

This is always returning empty results when filters are included.

Working again thanks to #39


"Undefined offset: 1"

Hi Farhan Wazir, this package works fine, I love it, thanks a lot.
I have one problem to isMarkerInsideGeofence in laravel, my code is
$polygon = array('25.774,-80.190', '18.466,-66.118', '32.321,-64.757', '25.774,-80.190');         $latlngs = array('-12.043333,-77.028333', '-12.043333,-77.028333');         $mapStatus = GMaps::isMarkerInsideGeofence($polygon, $latlngs);
and Laravel response is
private function pointStringToCoordinates($pointString) {         if(strpos($pointString, ", ") !== false) $coordinates = explode(", ", $pointString);         elseif(strpos($pointString, ",") !== false) $coordinates = explode(", ", $pointString);         else $coordinates = explode(" ", $pointString);         return array("x" => $coordinates[0], "y" => $coordinates[1]);     }
"Undefined offset: 1"

Do you have any ideas?

Hello, it may be that in here:
$latlngs = array('-12.043333,-77.028333', '-12.043333,-77.028333');
you are using a combination of "delimiter"(parameter of the explode method.
You use "," and ", " the second time.
The method pointStringToCoordinates is not handeling this right, it works when al de delimiter string parameters are the same.
private function pointStringToCoordinates($pointString) {         if(strpos($pointString, ", ") !== false) $coordinates = explode(", ", $pointString);         elseif(strpos($pointString, ",") !== false) $coordinates = explode(", ", $pointString);         else $coordinates = explode(" ", $pointString);         return array("x" => $coordinates[0], "y" => $coordinates[1]);     }
At least thats what I think.
Hope it helps!


Support using ign-gui QML components in fully custom downstream application

Desired behavior

I would like to incorporate ign-gui and also ign-rviz QML components in an existing Qt Quick application. The existing application sets up a QGuiApplication already and needs to do some different things than what ignition::gui::Aplication does for the following:

Loads application specific QML into the QQmlApplicationEngine (see https://doc.qt.io/qt-5/qqmlapplicationengine.html#load-1).
Sets up a custom SIGINT signal handler
Sets up custom Qt message handler

Implementation suggestion
In order to use ign-gui QML components in a downstream application, I would like to suggest a couple of changes.

The method ignition::gui::App() returns a pointer of type ignition::gui::Application. Can an abstract base class be defined and then ignition::gui::App() returns the base class? Then Application would be changed to inherit from the base class.
The Application class performs a lot of plugin loading logic. Could the majority of this logic be extracted to a helper class that could also be used downstream? Ideally, the Application class would then only be specific to setting up and interacting with ignition::gui::MainWindow and other "top level" things like signal handlers and logging.

Note that the method ignition::gui::Application::AddPluginsToWindow is specific to proably too specific to igntion::gui::MainWindow to be extracted, but maybe it could be broken down some with common functionality extracted.

Alternatives considered
I could subclass the ignition::gui::Application class as-is and override the constructor and other methods. I would have to work around the issues described here and I am not sure how feasible this solution is without testing it.
Additional context

N/A

The method ignition::gui::App() returns a pointer of type ignition::gui::Application.

That's just a wrapper around qGuiApp:
https://github.com/ignitionrobotics/ign-gui/blob/f8af480c564cda1ace207378b7c526870dce468d/src/Application.cc#L173-L177
Could you use qGuiApp directly for your use case?

Can an abstract base class be defined and then ignition::gui::App() returns the base class?

Could you elaborate on what functionality would be on the new abstract class, and what would remain in gui::Application?

Could the majority of this logic be extracted to a helper class that could also be used downstream?

Yes, I think that's a good idea. While implementing it, we should try to be backwards-compatible as much as possible, so we don't break existing users. For example, Application::LoadPlugin could call the new PluginManager::LoadPlugin (or any other name it has).

Could you use qGuiApp directly for your use case?

The issue is with ignition::gui code that uses the App() method. For example, see ign-gui/src/Plugin.cc in the method PluginLoad
this->dataPtr->context = new QQmlContext(App()->Engine()->rootContext());

In order for plugin loading  to work downstream, the qGuiApp pointer must be to an object that can be cast to an Application type. So it is not downstream code, but ignition::gui code that is using App().

Can an abstract base class be defined and then ignition::gui::App() returns the base class?

Could you elaborate on what functionality would be on the new abstract class, and what would remain in gui::Application?

I think the abstract class would have public functions for the public functions currently implemented in Application

public: virtual QQmlApplicationEngine *Engine() const = 0;
public: virtual bool LoadPlugin(const std::string &_filename,  const tinyxml2::XMLElement *_pluginElem = nullptr) = 0;
public: virtual bool LoadConfig(const std::string &_path) = 0;
public: virtual bool LoadDefaultConfig() = 0;
public: virtual void SetDefaultConfigPath(const std::string &_path) = 0;
public: virtual std::string DefaultConfigPath() = 0;
public: virtual void SetPluginPathEnv(const std::string &_env) = 0;
public: virtual void AddPluginPath(const std::string &_path) = 0;
public: virtual std::vector<std::pair<std::string, std::vector<std::string>>> PluginList() = 0;
public: virtual bool RemovePlugin(const std::string &_pluginName) = 0;
public: virtual std::shared_ptr<Plugin> PluginByName(const std::string &_pluginName) const = 0;
signals: virtual void PluginAdded(const QString &_objectName) = 0;
public slots: virtual void OnPluginClose() = 0;

Could the majority of this logic be extracted to a helper class that could also be used downstream?

Yes, I think that's a good idea. While implementing it, we should try to be backwards-compatible as much as possible, so we don't break existing users. For example, Application::LoadPlugin could call the new PluginManager::LoadPlugin (or any other name it has).


Changes to add tracelog for Featureflag exceptions

Incase of Failure to fetch FF, right now we are eating up any exception and are logging the failures as a debug print without even logging the exception on the console.log.
Changes are made to

Start capturing the exception and logging it to the console of the task as a warning rather than debug print

The same is reflected onthe pipeline run warnings

Logging the same failure to tracelog as error trace which can be monitorited via kalypso

azp /run

azp /run

/azp run

/azp run

/azp run

/azp run

/azp run


Request Never Returns with Empty Body

When making a request that only has header info and an empty body, the request never returns.
Here is a test case, that always times out:
    func testThatShowsSuccessHeadAlwaysTimesOut() {
        let asyncExpectation = expectation(description: "Wait for response")
        Alamofire.request("http://httpbin.org/status/200").responseJSON { response in
            switch response.result {
            case .success:
                asyncExpectation.fulfill()
            case .failure(_):
                XCTFail("The call returned a failure")
            }
        }
        waitForExpectations(timeout: 20)
    }

Using curl 'curl -I http://httpbin.org/status/200', the header reports 'Content-Length: 0'.
If I change to a status of 204 (no content), the test passes.
Alamofire Version: I am using head of master.

In My Case it display error

▿ FAILURE: responseSerializationFailed(Alamofire.AFError.ResponseSerializationFailureReason.inputDataNilOrZeroLength)
▿ failure : AFError
- responseSerializationFailed : Alamofire.AFError.ResponseSerializationFailureReason.inputDataNilOrZeroLength

Which i case its perfect because it doesn't content any Body.

Hi @gerrypower,
@hardikdevios is right. You can't use a responseJSON serializer with that status API because it doesn't return any data. When you do, you'll always get an Alamofire.AFError.ResponseSerializationFailureReason.inputDataNilOrZeroLength as @hardikdevios has already pointed out.
The reason your test times out is because you don't have a asyncExpectation.fulfill() in your failure case. That causes both the XCTFail to fail as well as the timeout.
The reason the 204 status call works is that the responseJSON handler has logic to handle a 204 or 205 gracefully without failing. They are special HTTP status codes that do not return data so we have special logic in Alamofire to handle them in the default response handlers.
A better way to test this is the following:
func testThatShowsSuccessHeadDoesNotTimeOut() {
    let asyncExpectation = expectation(description: "Wait for response")

    Alamofire.request("http://httpbin.org/status/200").response { response in
        debugPrint(response)
        asyncExpectation.fulfill()
    }

    waitForExpectations(timeout: 20)
}

In summary, if you don't fulfill your expectation in ALL cases, you'll always time out. Also, you can't use the default response handlers without receiving an error with no data unless you get back a 204 or 205.
Cheers. 🍻


Implementing external semaphores

Hi,
I'm writing an application that need access to external semaphore functionalities provided by these extensions VK_KHR_external_fence and VK_KHR_external_semaphore. These extensions are supported when querying the list of supported extensions, but when I query to get the properties of the semaphore using VK_KHR_external_fence_capabilities and VK_KHR_external_semaphore_capabilities, the handle types and semaphore features are all 0:
https://github.com/KhronosGroup/MoltenVK/blob/e6b7806ad19957e0f1194c2a081013b9e6db2605/MoltenVK/MoltenVK/GPUObjects/MVKDevice.mm#L1323
Is this not implemented correctly in MoltenVK? Pardon my language if I made any mistake, I'm new to Vulkan & MoltenVK :).

Based on my reading of the standard, it is legal for a Vulkan implementation to implement VK_KHR_external_semaphore without supporting any external handle types. Typically, supporting a handle type requires also supporting one of the handle-type extensions (e.g. VK_KHR_external_semaphore_fd).
Metal does support this functionality, but first we need to define extensions providing extension structures so you can, you know, actually import and export these objects, because none of the existing ones is adequate for Metal.


Navigate: View Experiences (Revert Changes)

Okay. This was your original PR.
https://github.com/alan-turing-institute/AutSPACEs/pull/147/files
I need to see all the changes you've made in these files except for certain changes made from the merge conflict.
Specifically

[ ] The Moderation page

The changes you've added in your other PR are okay to add to this branch, but the bigger issue is that none of your work from #147 has carried over.

When I checkout out this branch and run the docker instance, none of the changes you've made to the View Experiences page are showing up. :(

Oh, so as I understand, when I push changes to this particular PR, the previous changes I made to the original PR aren't being reflected here. Hence, the whole NoReverseMatch conflict comes up right?

The Pull Request is a reflection of the changes you made on the branch.
This PR and the original PR are snapshots of that branch.
For some reason, all the changes View Experience page changes that are required here have been removed from your navigate_view_experiences branch.
The reason why the NoReverseMatch conflict occurs is because the changes you've made in this PR are incompatible with the current main branch. You need to make them compatible by incorporating the original changes you've made.
Does that make sense?

Ohhhh okay..so I need to push the original changes here as well then?

@jhlink I think if she takes the pull of the main branch on her current branch the original changes would come (if the original PR was merged)

Yeah i think the problem is that the original PR got reverted. So, the changes didn't get merged

oh.... does that mean a completely new PR having both your old changes(original changes) as well as the new changes.

oh.... does that mean a completely new PR having both your old changes(original changes) as well as the new changes.

Yes, I believe so

@anoura12 , yes. You need all the original changes. Luckily, I've made a copy of the old branch here.
If you merge old_navigate_view_experiences into navigate_view_experiences, you should have all your original changes + new changes.
The reason you can't push any changes to the old PR is because it's already closed/merged.

@jhlink That sounds good. I've merged the old_naviagte_view_experiences to this branch. Hope it works now! :crossed_fingers:

Okay @jhlink I did make the new commits but I think in the cherry picking process, I accepted my changes instead of the incoming changes..so i guess I made my own commits in the process. I think it should work now

This PR closes #135