Skip to content

Conversation

oxinabox
Copy link
Member

@oxinabox oxinabox commented May 22, 2019

ImageMagick is a rather heavy weight dependency.
Through the wizardry of FileIO.jl we don't need to directly depend on it.
We just need it installed, or else the log_image functions throw an error.
The error message is actually pretty helpful and clear anyway:

Errors encountered while saving nothing.
All errors:
   ArgumentError("Package QuartzImageIO not found in current path:\n- Run `import Pkg; Pkg.add(\"Qu
artzImageIO\")` to install the QuartzImageIO package.\n")
   ArgumentError("Package ImageMagick not found in current path:\n- Run `import Pkg; Pkg.add(\"ImageMagick\")` to install the ImageMagick package.\n")

People who do not use the log_image functions don't care,
and so this massively speeds up install/precompile time for them.
Which is good. Because I am one of them (right now)

@codecov
Copy link

codecov bot commented May 22, 2019

Codecov Report

Merging #28 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master      #28   +/-   ##
=======================================
  Coverage   79.31%   79.31%           
=======================================
  Files          24       24           
  Lines         290      290           
=======================================
  Hits          230      230           
  Misses         60       60

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 4dd51d4...17c38af. Read the comment docs.

1 similar comment
@codecov

This comment has been minimized.

@PhilipVinc PhilipVinc merged commit 1c311ed into JuliaLogging:master May 22, 2019
@PhilipVinc
Copy link
Member

Thanks for keeping this lean

@PhilipVinc
Copy link
Member

@JuliaRegistrator register()

@JuliaRegistrator
Copy link

Pull request comments will not trigger Registrator as it is disabled. Please trying using a commit or issue comment.

shashikdm pushed a commit to shashikdm/TensorBoardLogger.jl that referenced this pull request May 26, 2019
* use argument decomposition in log_histogram

* Rename Logger to TBLogger

*  [Pulled from NeuralQuantum.jl] Implement the AbstractLogger interface.

* Rename  delta_step -> log_step_increment as suggested by @oxinabox
Add a few docstrings
Remove Coveralls

* Make `preprocess` recursive as suggested by @oxinabox
  - preprocess now calls itself recursively and only pushes to a list if the type can be serialized.
  - Remove the `loggable` function as now it's no longer needed.
  - There is also no need for a stack (and the DataStructures dependency). Just use a Vector for `data` in `handle_message`
  - Fix the readme: `delta_step` -> `log_step_increment`

* Fix tests by using `step` keyword in `log_value`. ( I removed the non-keyword version in the last commit )

* Add very basic test for the logging interface.

* Silently drop things we can't serialize

* Bugfix + Support Tuples

* Log histogram support N-d arrays (#7)

* log N-d arrays

* Update src/Loggers/LogHistograms.jl

Co-Authored-By: shashikdm <shashikant.123kadam@gmail.com>

* Update LogHistograms.jl

* Use an enum to describe initialization policy + tests

* Add some tests for scalar and histogram summary creation

* Add coverage

* Add more tests and fix two minor bugs in log_vector

* correct docstring (#13)

* Logtext first implementation (#12)

* init logtext

* Add util function serialize_proto

* Add markdown_repr and removed type constraint on data

* change improved markdown_repr

* Add simple tests for text logger

* minor bug fix

* relax type constraints (#15)

* relax type constraints

* don't loop and push

* A collection of cleanups (#16)

* cleanup text logger

* rename the file with the event code to reflect its contents

* Move the logger type

* cleanup imports and exports

* centeralize the code that decided which logger to use into one file

* - Move proto files out of src/
- Update the README
- remove proto files from coverage

* BugFix

* Log anything that can't be logged otherwise as text

* Split the initialization method of TBLogger

* rename set_step to set_step! and increment_step to increment_step!. Remove old (and unused) methods. Define a reset! method for TBLogger

* Update TBLogger.jl (#18)

* Update TBLogger.jl

minor bug fix for Julia 1.0.3

* Update src/TBLogger.jl

Co-Authored-By: shashikdm <shashikant.123kadam@gmail.com>

* Update event.jl

* set default step as a default in make_event (#19)

* set default step as a default in make_event

* Update event.jl

minor typo

* Update .travis.yml (#20)

Update .travis.yml
Test against latest stable version and LTS version
Update test_TBLogger.jl to fix tests on 1.0

* add matrix and list support to log_text

* reverting test_TBLogger.jl

* Wrapper type implementation (#17)

* Wrapper type implementation

* Wrap `propertynames` into `logable_properties` and use it when preprocessing structures so that it's just a one-liner to drop fields out of a struct when logging

* Add common logic to TBHistogram and TBVector so that if they wrap complex arrays they split it into real and imaginary part.

* Add tests

* Add support for Matrix and List in LogText.jl (JuliaLogging#22)

* add matrix and list support to log_text

* Add Compat Intervals

* update readme with install instructions (and correct minor typos)

* Logimage (#21)

Implementing Image logging functionality.

* add `log_image` and `log_images`
* add Pkg.add("Flux") in test
* update Project.toml

* add support for 1-D images in `log_image`

* add ImageFormat explanation

* add seperate function for image objects

* add more formats
change flow of data
different `image_summary` for image object and AbstractArrays

* add preprocess function for image objects for automatic dispatch

* add TBImage, TBImages wrapper

* add tests. more required. more will come

* minor bug fix

* fix some tabspace mix (JuliaLogging#25)

* refactoring

* add support for 3-d images such as mri

* bug fixes

* add more tests

* minor bug fix

* add examples folder

* syntax revision

* change if else to function dispatch `image_summary`

* major revision `log_image` smart use of ImageFormats

* change throw message

* change dict to ternary. minor revision

* add LogAudio.jl with dep WAV.jl

* add test for `log_audio`

* add `TBAudios` and `TBAudio` and test

* bugfix `log_text`

* add examples `Audios.jl` and `Texts.jl`

* Add SummaryCollection constructors that take the summaries (JuliaLogging#26)

* Add SummaryCollection constructors that take the summaries

* use new SummaryCollecton constructor

* change SummaryCollection construction `log_audio`

* add support for 1-D and 3-D images, Logger interface, TBImage Wrapper, Tests, Examples (JuliaLogging#24)

* add matrix and list support to log_text

* add support for 1-D images in `log_image`

* add ImageFormat explanation

* add seperate function for image objects

* add more formats
change flow of data
different `image_summary` for image object and AbstractArrays

* add preprocess function for image objects for automatic dispatch

* add TBImage, TBImages wrapper

* add tests
* add support for 3-d images such as mri
* add more tests

* add examples folder

* syntax revision

* change if else to function dispatch `image_summary`

* major revision `log_image` smart use of ImageFormats

* change throw message

* Update to v 0.1.1

* update

* change docstring

* rm test data

* chane SummaryCollection

* Do not directly depend on ImageMagick (JuliaLogging#28)

* remove direct dependency on ImageMagick
* bump version

* rm WAV dependency

* switch `with_logger` blocks from `begin` to `do` in README (JuliaLogging#30)

* Add `log_audio`, `TBAudio`, tests, examples (JuliaLogging#27)

Logging audio:
* add `TBAudios` and `TBAudio` and their tests
* add examples `Audios.jl` and `Texts.jl`

Improvements to Image logging:
* add support for 1-D images in `log_image`
* add seperate function for image objects
* add dispatching support to image object
* add support for 3-d images such as mrs
* add TBImage, TBImages wrapper

Improvements to Text Logging:
* add matrix and list support to log_text

* switch `with_logger` blocks from `begin` to `do` in README (JuliaLogging#30)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants