Commit Graph

431 Commits

Author SHA1 Message Date
Federico Fissore 54971e451f SerialUploader: actualUploadPort may still be null, in that case fall back to userSelectedUploadPort 2015-06-12 14:21:08 +02:00
Federico Fissore c138628c00 When ports "move", they move in mysterious ways. Watching them closely so we don't miss the catch 2015-06-12 14:21:08 +02:00
Federico Fissore a755dd7694 SerialBoardsLister now waits indefinitely before starting. BaseNoGui.packages
will eventually be set to at least an empty HashMap, even if no hardware is
present. Fixes #3311
2015-06-12 09:55:33 +02:00
Federico Fissore 2f4485d06b Added missing license headers, added missing blank line between license header
and package declaration, organized imports
2015-06-12 09:55:25 +02:00
Federico Fissore 3153d0b5d8 Fixed typo. Fixes #3323 2015-06-12 08:41:36 +02:00
Federico Fissore 0a6577f85c If parsing a core fails, don't crash but report a warning. Fixes #3307 2015-06-10 15:42:47 +02:00
Federico Fissore fec9fb4d0e Tab deletion confirmation now shows the complete file name IF it's not a .ino. Fixes #2350 2015-06-08 15:32:15 +02:00
Federico Fissore bef09e4d03 MacOSX: Platform cleanup 2015-06-08 15:05:10 +02:00
Federico Fissore ccd7fdc0a3 By using syntax like file://./docs/index.html, editor will open file index.html stored in folder SKETCH_FOLDER/docs/. Fixes #224 2015-06-08 15:05:07 +02:00
Federico Fissore 84d10a8ea0 Some CLI args are parsed before initializing packages. --board argument is parsed after. Fixes #3261 2015-06-05 17:18:50 +02:00
Federico Fissore 0cb6b48e24 Boards/Lib managers: use system proxy settings (got rid of our proxy settings
in File > Preferences)
2015-06-04 13:34:44 +02:00
Federico Fissore e9d66015a4 Windows: reg query uses different separators on xp, fooling parser. Fixed 2015-06-04 11:44:56 +02:00
Federico Fissore bede6967d5 Installation folder check both at startup and when user attempts to change
sketchbook location. Fixes #2719
2015-06-03 17:46:01 +02:00
Federico Fissore b0cb2c4e52 Added File > Recent menu: shows last 5 opened sketches, sorted in reverse chronological order 2015-06-01 17:08:10 +02:00
Federico Fissore e55d4145d0 SerialMonitor suspend/resume: dealing with boards that change serial port
between uploads. Fixes #3255
Fixed a missing status management, leading IDE to believe Serial Monitor
was opened while it was not. See #3268
2015-06-01 12:14:30 +02:00
Federico Fissore 740a14e638 UploadFactory: removed duplication 2015-06-01 12:08:43 +02:00
Federico Fissore 935becec64 Command line --get-pref may be used without name of the target pref.
If pref name is missing, all prefs are printed on stdout.
Should fix/mitigate #2982
2015-05-29 15:16:51 +02:00
Federico Fissore a48906e0c2 ContributedPlatform.toString() is used as item in dropdown, so it should print only its version 2015-05-29 15:12:32 +02:00
Federico Fissore 5933a7e8d3 Changing order of boards in boards menu: built-in first, boards manager second,
sketchbook hardware folder third. Each group if sorted by alpha, case
insensitive. Fixes #2650
2015-05-29 14:22:45 +02:00
Federico Fissore 1b7574a8b9 Boards Manager: contributions MAY miss tools, but we missed to consider this case. Fixes #3248 2015-05-29 14:22:45 +02:00
Federico Fissore b11d54e503 Compiler: adding hooks (custom recipes) between the main phases. New hooks are:
hooks.sketch.prebuild, hooks.sketch.postbuild, hooks.libraries.prebuild,
hooks.libraries.postbuild, hooks.core.prebuild, hooks.core.postbuild,
hooks.linking.prelink, hooks.linking.postlink, hooks.objcopy.preobjcopy,
hooks.objcopy.postobjcopy, hooks.savehex.presavehex, hooks.savehex.postsavehex
2015-05-28 17:28:24 +02:00
PaulStoffregen c1002e247f Add build symbols for compile time and sketch path 2015-05-28 17:28:24 +02:00
Federico Fissore 4748e9df5e Avoid warning about SCCS folders in libraries, just ignore them. Fixes #3237 2015-05-27 11:26:00 +02:00
Federico Fissore 56e0349287 Allowing editing .S files. Fixes #1616 and #3059 2015-05-26 12:04:12 +02:00
Federico Fissore 8a1e6c8a9b CollectStdOutExecutor and CollectStdOutStdErrExecutor were plain wrong, were losing data and were blocking compilation. Fixes #3124 and #3115 2015-05-25 16:34:25 +02:00
Federico Fissore ab7b7351f5 Removed lots of calls to BaseNoGui.getPlatform(): static is evil 2015-05-22 15:58:47 +02:00
Federico Fissore 76c5d99123 ZipFile and Socket are not Closable in java 1.6 2015-05-22 09:21:20 +02:00
Federico Fissore 94b16a550e Faster library list downloading by downloading gzipped version 2015-05-21 17:02:21 +02:00
Federico Fissore 365b0bdc94 Closing streams using IOUtils.closeQuietly
Fixed badly handled stream found in the meanwhile
2015-05-21 16:50:49 +02:00
Federico Fissore 9ddb72b519 Moved DownloadableContribution and DownloadableContributionDownloader to parent package 2015-05-21 15:37:58 +02:00
Federico Fissore 37adee2553 Merge pull request #3194 from ffissore/windows-jna
Got rid on JNA
2015-05-21 10:25:54 +02:00
Federico Fissore 9166828bfe Due to website configuration changes, every url starting with http://arduino.cc has been changed to http://www.arduino.cc. Fixes #3191 2015-05-20 17:10:06 +02:00
Federico Fissore f6546aea45 Windows: got rid on JNA, thus no more UnsatisfiedLinkError (at least when accessing native OS functions). Fixes #3190 2015-05-20 16:33:33 +02:00
Federico Fissore 026210564d Several File.list() calls missed check for null return value. Fixed 2015-05-20 16:32:27 +02:00
Federico Fissore 0b4a4fb0b5 No need to use static variables 2015-05-20 11:42:44 +02:00
Chris--A b2f8b9b6c1 IDE: prevent multiple bad name notifications.
This patch will prevent the IDE from informing the user about a bad
sketch folder name multiple times.

Now the user is informed once at start up only, or once when it is
detected during a rescan of the folders.
2015-05-20 11:35:46 +02:00
Chris--A af812a551b Added support for .hh and .hpp libraries 2015-05-20 01:36:11 +10:00
Federico Fissore 9191442aea Libraries: fixed incorrect handling of null types 2015-05-19 16:26:03 +02:00
Federico Fissore 42b07f0337 Libraries bundled with cores will take the type of that core, instead of relying on an undocumented 'types' property. Fixes #2875 2015-05-19 12:24:11 +02:00
Federico Fissore 4c3de26631 Don't export sketch if the underlying core does not support it. Fixes #3171 2015-05-18 13:34:29 +02:00
Federico Fissore d008d9de81 Merge pull request #3141 from cmaglie/fix-recursive-delete
Fix for FileUtils.recursiveDelete() when dealing with symbolic links
2015-05-15 16:50:22 +02:00
Federico Fissore 7816ee3f10 New Preferences window: renders fine on every OS and it's easier to adapt using NetBeans as visual editor. Fixes #3140 2015-05-15 15:52:52 +02:00
Cristian Maglie 971bd77058 Removed redundant call to File.deleteIfExists()
file is already checked for being not null, no need to check again.
2015-05-14 19:36:37 +02:00
Cristian Maglie 956ddda98e Removed buggy redundant check in FileUtils.deleteIfExists()
The documentation for File.delete() says that the method return true
if the the file is successfully deleted, otherwise false is returned.
An exception is thrown only when the file is not accessible (for
permission problem).

Removing the extra check solves another problem, for example in a
folder with the following situation:

    linkToFileA -> FileA
    FileA

if we remove FileA, we remain with a broken link that can't be removed
using FileUtils.deleteIfExists() because calling File.exists() on a
broken link returns *false*. This commit solve this problem.
2015-05-14 19:18:24 +02:00
PaulStoffregen 0210c6b53a Fix Uncategorized warning message 2015-05-13 14:00:30 -07:00
Federico Fissore 74ace6674a Better naming and use of File constructor (avoids hardcoding system dependent path separator) 2015-05-13 10:21:57 +02:00
Federico Fissore 90a533b82c Using FileUtils.copyFile instead of dealing with raw streams 2015-05-13 10:16:09 +02:00
Federico Fissore 96b7c5ec6b MacOSX: fixed some failing tests 2015-05-12 15:23:22 +02:00
Federico Fissore e8c4980c4e Added BaseNoGui.VERSION_NAME_LONG: it includes "Hourly Build DATE" in case of a hourly build 2015-05-11 10:48:52 +02:00
Federico Fissore 5064af486f Added .editorconfig files http://editorconfig.org/ 2015-05-08 10:18:43 +02:00
ricardo.jl.rufino c3e1a9443c simple code refactor on PdePreprocessor 2015-05-07 17:15:49 +02:00
Arnav Gupta 4d029de000 saveHex: rename recipe.hex -> recipe.output
Signed-off-by: Arnav Gupta <championswimmer@gmail.com>
2015-05-07 11:57:12 +02:00
Arnav Gupta 78936541b7 update Sketch menu, add Save hex option
* Moving Upload options from "File" menu to "Sketch" menu as those
     are sketch actions more than file actions.

Signed-off-by: Arnav Gupta <championswimmer@gmail.com>
2015-05-07 11:57:12 +02:00
Federico Fissore 11327bb3a6 Starting 1.6.5 2015-05-07 11:56:38 +02:00
Federico Fissore d0d9aa82d1 Merge pull request #3017 from cmaglie/programmer-pref-override
programmer.txt definitions must have priority over platforms.txt tools definitions
2015-05-06 15:49:33 +02:00
Federico Fissore e2bf41ddd9 MacOSX: fixed error when clicking on https urls. Fixes #3083 2015-05-06 09:11:00 +02:00
Federico Fissore 03a43370b7 Added missing license headers to files added with the last commits 2015-05-05 14:29:15 +02:00
Federico Fissore 85b2298ca7 When IDE is started and built in core is newer than installed one and this check hasn't been notified before, show "please update" modal 2015-05-05 13:03:28 +02:00
Federico Fissore de95ef6c41 Predicates: extracting anonymous inner classes for better reuse 2015-05-05 11:56:56 +02:00
Federico Fissore 9b58812d1d Preparing the ground for rewriting Preferences GUI code (and hopefully fixing the tiny-pref-window bug on macosx) 2015-05-05 10:02:12 +02:00
Federico Fissore 7e7a9d0fe8 Disabling uncertified boards warning even in java code, for good measure 2015-05-05 09:17:50 +02:00
Federico Fissore 060ec30e1c GPGSignatureVerification: better error handling when reading signature 2015-05-05 08:49:01 +02:00
Federico Fissore 0c123d7d14 Deleting json files if they are some how corrupted. Fixes #3015 2015-05-04 17:44:16 +02:00
Federico Fissore 875a775e93 Mitigates #3074 by avoiding NPE. Making the IDE work with system toolchains remains to be fixed 2015-05-04 17:28:39 +02:00
Federico Fissore cd49d29e52 Lots of unclosed input and output streams now properly closed. They were preventing Boards Manager from working on Windows 2015-05-04 15:44:34 +02:00
Federico Fissore 19bb40cbb1 ContributionInstaller: downloadIndex -> download 2015-05-04 12:54:12 +02:00
Federico Fissore a214564952 Boards Manager: platforms listed in non-signed package index files goes under "Contributed" category 2015-05-04 12:05:50 +02:00
Federico Fissore cddfa2891e Boards Manager: package index file with name starting with "test_package_" are preserved 2015-05-04 12:05:50 +02:00
Federico Fissore ecf432fadc Boards Manager: downloading additional files as specified in preference 'boardsmanager.additional.urls' 2015-05-04 12:05:50 +02:00
Federico Fissore 1f1f5b5c0e Copying bundled signature file if missing from user's preferences folder 2015-05-04 12:05:50 +02:00
Federico Fissore cf1879f948 Introducing GPG signature verification when loading main package_index file 2015-05-04 12:05:50 +02:00
Federico Fissore 804480ce53 ContributionIndexer now loads and merges content of files named package_SOMETHING_index.json 2015-05-04 12:05:49 +02:00
Federico Fissore 7552636bd1 File.listFiles() can return null 2015-04-29 11:57:27 +02:00
Federico Fissore b10417505f Windows: added comment to DoubleQuotedArgumentsOnWindowsCommandLine to explain the need for such a char replacement 2015-04-24 12:20:42 +02:00
Federico Fissore f54851ecfa Windows: Compiler wasn't supplying Windows command line with the correct double quotes 2015-04-24 12:03:41 +02:00
Federico Fissore d805fb4e1f Renamed compiler.warning_flags pref to compiler.warning_level
Provided a default value for compiler.warning_flags
Releasing avr core 1.6.5
2015-04-24 09:27:28 +02:00
Federico Fissore 4cf77cd90d If previously downloaded package_index.json is older than the bundled one, the bundled one wins 2015-04-23 11:10:54 +02:00
Cristian Maglie a7e6a39f4e programmer.txt has now priority over platforms.txt tools definitions
This allows properties defined in programmers.txt to override generic
configurations in platform.txt where needed, for example in the
following configuration:

programmers.txt:

   myprog.name=My New Programmer
   [...]
   myprog.program.tool=avrdude
   myprog.config.path={runtime.platform.path}/myprog_avrdude.conf
   [...]

platform.txt:

   tools.avrdude.path={runtime.tools.avrdude.path}
   tools.avrdude.cmd.path={path}/bin/avrdude
   tools.avrdude.config.path={path}/etc/avrdude.conf
   [...]
   tools.avrdude.upload.pattern="{cmd.path}" "-C{config.path}" {upload.verbose} -p{build.mcu} -c{upload.protocol} -P{serial.port} -b{upload.speed} -D "-Uflash:w:{build.path}/{build.project_name}.hex:i"

the generic tools.avrdude.config.path value

   {path}/etc/avrdude.conf

is replaced by the more specific myprog.config.path used in "myprog" programmer

   {runtime.plaform.path}/myprog_avrdude.conf
2015-04-22 14:33:20 +02:00
Cristian Maglie 5af390b5e2 Added missing eclipse classpath entries 2015-04-21 18:28:26 +02:00
Federico Fissore 96c4576962 Added --preserve-temp-files command line option 2015-04-15 11:00:01 +02:00
Federico Fissore 3465fcf97b File.deleteOnExit is not recursive. Replaced by DeleteFilesOnShutdown shutdown hook. Fixes #2971 2015-04-15 10:21:37 +02:00
Federico Fissore eacddd6120 Block discovery threads until packages is not null, otherwise boards discovered during startup will miss model name 2015-04-13 15:36:17 +02:00
Federico Fissore 350adb99cb Also SerialDiscovery was affected by bug found at 40535dfc55. Fixes #2892 2015-04-13 13:38:55 +02:00
Federico Fissore 40535dfc55 NetworkDiscovery was silently failing because packages werenìt ready yet. Fixes #2837 2015-04-13 13:29:05 +02:00
Federico Fissore b42c6667e1 Better preference for setting warnings level. See 61592d78fa (commitcomment-10668365) 2015-04-13 12:22:37 +02:00
Federico Fissore c740f251f4 SAM boards stop compiling due to way of handling params with spaces on different OSs. Fixed 2015-04-13 12:05:00 +02:00
Federico Fissore 4c9e5fc564 Restored error messages. Got rid of MessageSyphon as ther were losing some error messages. Fixes #2737 2015-04-10 17:44:13 +02:00
Federico Fissore 61592d78fa New preference: enable all compiler warnings, off by default. Fixes #1728 and #2415. Also affects #2634 and #2207 2015-04-10 15:29:15 +02:00
Federico Fissore 7d0ffe92b2 Lib/Board Manager CRC check is now case insensitive. Fixes #2953 2015-04-10 09:52:31 +02:00
Federico Fissore 3c67e74382 Library Manager: better error message 2015-04-09 16:04:56 +02:00
Federico Fissore b35ab60ea2 Library Manager: some lib names end with numbers, hence separate version with 'version' 2015-04-09 15:56:15 +02:00
Federico Fissore f0cc644d8f Library installer: made messages play nicer with i18n 2015-04-09 15:30:40 +02:00
Kristian Sloth Lauszus 26ae4d13b8 Don't throw exception if library is already installed 2015-04-09 14:56:24 +02:00
Kristian Sloth Lauszus ada7b41063 Print library name when installing library via library manager 2015-04-09 14:47:58 +02:00
Federico Fissore 87e2e68b85 CLI: Board and Lib Manager, syntax change: --install-boards (plural) and arduino:avr:1.6.2 (with the arch, not the name of the selected platform) 2015-04-09 13:03:43 +02:00
Federico Fissore 6d46bd0bde Useless DropdownBuiltInLibrariesItem removed
Moved LibraryInstaller from app to arduino-core
Moved InstallerJDialogUncaughtExceptionHandler to the generic contributions.ui package
2015-04-09 12:17:56 +02:00
Federico Fissore a7024791cd download.php was used to distribute downloads across multiple server. we use dns round robin now 2015-04-09 12:12:10 +02:00
Federico Fissore 6b6866370a Preliminary support to online help/reference 2015-04-08 16:38:36 +02:00
Federico Fissore ba3ecff13c Added missing license headers 2015-04-08 15:38:22 +02:00
Federico Fissore dd3f9fe66c CLI: board manager install latest if version is not specified 2015-04-08 15:35:03 +02:00
Federico Fissore 09255254d7 Preliminary command line support to boards manager and library manager 2015-04-08 15:15:41 +02:00
Federico Fissore 643d9515ac Starting 1.6.4 2015-04-07 17:47:52 +02:00
Federico Fissore b9a90f69d5 Invalid versions don't cause IDE to crash and exit any more. They are reported and contributions are considered missing version. Fixes #2926 2015-04-07 12:05:05 +02:00
Federico Fissore 99fa19c36c Letting postInstallScript fails gracefully 2015-04-02 11:20:53 +02:00
Federico Fissore 3a916633b1 https links were not working properly on mac and win 2015-04-02 09:51:26 +02:00
Federico Fissore 7a97be43a5 Uniformly using versions parsed through semver 2015-04-01 17:11:48 +02:00
Federico Fissore d94e279fdf Showing post install script errors AFTER the installation is completed 2015-04-01 13:23:57 +02:00
Federico Fissore f76d1d5678 Merge pull request #2850 from PaulStoffregen/duplicate-library-detect
Advise of duplicate libraries after compiling
2015-04-01 09:31:10 +02:00
Federico Fissore 5dd49352df Don't add keys (and display a warning) if the missing key doesn't make sense in target platform.txt. For a key to make sense, two tree level must be present already, eg: tools.avrdude 2015-04-01 09:03:17 +02:00
Federico Fissore 6e9d0e5f99 Ignoring rewrite rules if rewriting=disabled is present in target platform.txt 2015-04-01 09:01:31 +02:00
Federico Fissore 29cb42eb50 Bundled core is again inside the hardware folder.
Fixed a handful of glitches when dealing with multiple installed cores
2015-03-31 17:42:41 +02:00
PaulStoffregen b5367bcdbe Advise of duplicate libraries after compiling 2015-03-30 10:24:18 -07:00
Federico Fissore 1fcd6ff1ce ArchiveExtractor was not making symlinks the right way 2015-03-30 17:12:38 +02:00
Federico Fissore ecde17b6e2 Platform.txt in-memory rewrite rules: whenever loaded, if a property is set to a value known to be wrong/old, that property is replaced with the current/right value.
This happens in-memory, no platform.txt file were harmed during rewriting
Mitigate #2838
2015-03-30 16:18:08 +02:00
Federico Fissore ea5155656a Starting 1.6.3
Updated toolchains: linux statically compiled, added gcc lto plugin (disabled)
2015-03-30 15:06:59 +02:00
Federico Fissore fe739de2ad Getting rid of other unused jna stuff 2015-03-30 13:55:48 +02:00
Federico Fissore b65b576eb0 Getting rid of native stuff. Avoid native stuff: it will break. Fixes #2828, #2829, #2830 2015-03-30 10:46:37 +02:00
Federico Fissore c21b8b7445 Versions: replacing ending "b" with .1 2015-03-27 14:51:20 +01:00
Federico Fissore 3bcbf22a2a Libraries under "contributed" in lib menu are those that have types "contributed" 2015-03-27 14:51:20 +01:00
Federico Fissore 6e498ee5b9 LibraryManager: better type filtering 2015-03-27 14:51:19 +01:00
Federico Fissore 74a8ccdeb4 Introducing bundled_library_index.json 2015-03-27 14:51:19 +01:00
Federico Fissore a1d99b9a9b LibraryManager: category is now topic, type added to list official/contributed/recommended libs 2015-03-27 14:51:19 +01:00
Federico Fissore b0a357f5d3 Library Manager: added Type filter dropdown 2015-03-27 14:51:19 +01:00
Federico Fissore 6679393b7a Assuming the bundled version is an AVR bundle, force unpacking the default package if it's missing 2015-03-27 14:51:19 +01:00
Federico Fissore 9b5fa9fb9a Added commons-compress license 2015-03-27 14:51:19 +01:00
Federico Fissore ac4aea47b0 json deserializer: don't fail on unknown props, thus allowing us to upgrade the schemas without breaking running IDEs 2015-03-27 14:51:18 +01:00
Federico Fissore 24b32422e2 Fixed a bunch of code inspection warnings 2015-03-27 14:51:18 +01:00
Federico Fissore ed3d467329 DownloadableContributionsDownloader: fixed wrong math when downloading partially downloaded files 2015-03-27 14:51:18 +01:00
Federico Fissore e646ca2525 ContributionInstaller OS check: MacOSX now uses real arch rather than JVM one 2015-03-27 14:51:18 +01:00
Federico Fissore a19cdf1492 ArchiveExtractor: allowing symlinks with absolute paths, still printing a warning 2015-03-27 14:51:18 +01:00
Federico Fissore 02b7fa87eb Leave relative symlinks as they are 2015-03-27 14:51:17 +01:00
Federico Fissore 59b8177916 Separate HTTPS proxy support (server and port) 2015-03-27 14:51:17 +01:00
Federico Fissore 29d20f297c Fixed missing symlinks after extraction 2015-03-27 14:51:17 +01:00
Federico Fissore fc4179f1f7 Cores manager:
added post install script support
absolute path symlinks are converted to relative to the local folder and a warning is printed
2015-03-27 14:51:16 +01:00
Federico Fissore 6b5244eafe Some ArchiveExtractor bugs fixed and its code formatted 2015-03-27 14:51:16 +01:00
Federico Fissore 323458c8d8 Added HTTPS proxy properties 2015-03-27 14:51:16 +01:00
Federico Fissore b32dc93506 Ported UX of library manager to core manager 2015-03-27 14:51:16 +01:00
Federico Fissore 17d3729426 Package names refactoring: contributions is the main package, libs and cores are subpackages 2015-03-27 14:51:16 +01:00
Federico Fissore fe85083f0b Setting preferences.txt permissions to 600 on linux and mac 2015-03-27 14:51:16 +01:00
Federico Fissore 4db6c737be Preferences: added proxy settings 2015-03-27 14:51:16 +01:00
Federico Fissore 103f2e433a Continuing improving library manager 2015-03-27 14:51:15 +01:00
Federico Fissore 8e5a04f6a9 Various improvements on library manager 2015-03-27 14:51:15 +01:00
Federico Fissore 6d55c6ea03 FileDownloader: made it play nice with 301 status code 2015-03-27 14:51:15 +01:00
Federico Fissore 0489585c3e Now using semantic versioning 2015-03-27 14:51:14 +01:00
Federico Fissore 251bb76ece Splashscreen 2015-03-27 14:51:13 +01:00
Federico Fissore e5e5880a15 HostDependentDownloadableContribution better handles Macosx 2015-03-27 14:51:13 +01:00
Federico Fissore d050c4ee4a AVR bundle: by default the IDE is built bundled with the avr toolchain and cores
By passing -Dlight_bundle=1 to ant, an light/empty IDE is built
2015-03-27 14:51:13 +01:00
Cristian Maglie 2c234a09f1 Libraries Installer UI refactor 2015-03-27 14:51:12 +01:00
Federico Fissore f833ff84a7 Base and BaseNoGui: removed uncaught exception handler
ContributionManagerUI: after install/upgrade/remove, cell updated and not in edit mode
2015-03-27 14:51:12 +01:00
Cristian Maglie 1f564d6709 Cores Installer UI refactor (WIP) 2015-03-27 14:51:12 +01:00
Federico Fissore 56b9fd7d93 LibraryIndex: removed cateogories field, generating it every time
LibrariesIndexer: setting category to Uncategorized when missing
2015-03-27 14:51:11 +01:00
Federico Fissore 86f84c8a3e Changed package_index and library_index json urls to use download.php proxy
Installed a ESC key listener: it allows to close the dialog pressing the ESC key
2015-03-27 14:51:11 +01:00
Federico Fissore 589f514a47 ContributedPlatform.getResolvedTools returns a copy of the original list (otherwise violating inner state) 2015-03-27 14:51:11 +01:00
Federico Fissore 6007403834 Removed some printStackTrace in favour of throwing RuntimeExceptions. DefaultUncoughtExceptionHandler will handle them 2015-03-27 14:51:11 +01:00
Federico Fissore fe6718ce4f Removing previously installed platform on upgrade 2015-03-27 14:51:11 +01:00
Cristian Maglie b1e0249a4f Tools path are now always available through preferences
The preference key is:
{runtime.tools.TOOLNAME.path}
{runtime.tools.TOOLNAME-VERSION.path}

For example the tool "avrdude" is now available through

{runtime.tools.avrdude.path}

or if a specific version is needed:

{runtime.tools.avrdude-5.11.path}
2015-03-27 14:51:11 +01:00
Cristian Maglie 12a2d872d6 Added empty library_index.json if default is not available. 2015-03-27 14:51:10 +01:00
Cristian Maglie 98fec7222b Use Downloader* helper classes on ContributionInstaller.
This rationalize and simplify a lot of code.
2015-03-27 14:51:10 +01:00
Cristian Maglie 0755c7c004 Library installer UI 2015-03-27 14:51:10 +01:00
Cristian Maglie 0b9223c158 Added Contributions for libraries 2015-03-27 14:51:10 +01:00
Cristian Maglie 75d1cb874d Available boards are updated right after closing "Boards Installer"
Boards menu list has been moved into Base class where it looks a more
appropriate place to reduce interactions between Editor class and Base
class.

Probably shared menus can be moved in a separate, specific, class.
2015-03-27 14:51:10 +01:00
Cristian Maglie 0783f40ba5 Added VersionComparator to be used for comparing versions numbers (WIP) 2015-03-27 14:51:10 +01:00
Cristian Maglie fe2d087ebd Implemented "Update List" button of Boards Installer. 2015-03-27 14:51:10 +01:00
Cristian Maglie 5d1e4e3f70 Inverted MVC logic on installer to get a cleaner code.
Part of the control logic was moved from listeners to GUI class methods.
This goes against a pure MVC but makes the code much more cleaner.
2015-03-27 14:51:10 +01:00
Cristian Maglie 56ae061d7e Improved platforms installer GUI. Platforms are now downloaded from network. 2015-03-27 14:51:09 +01:00
Cristian Maglie b249be46c7 Added FileDownloader 2015-03-27 14:51:09 +01:00
Cristian Maglie 915c9d6f8f Introducing 'Progress' interface. 2015-03-27 14:51:09 +01:00
Cristian Maglie 2a8c742453 Added Contribution installer, install and remove correctly.
Tested on linux
2015-03-27 14:51:09 +01:00
Cristian Maglie 373a625903 GUI for platform installer, first draft 2015-03-27 14:51:09 +01:00
Cristian Maglie 100dd21bd0 Added Contributed Platforms.
- TargetPackage / TargetPlatform / TargetBoard are now interfaces
- Contributions installed are detected during init time
- Tools must be referenced through "path" property (automatically set
  by the IDE to the contributed tool path)
2015-03-27 14:51:09 +01:00
Cristian Maglie 183c386e8c PGP Digital signature verifier class 2015-03-27 14:51:09 +01:00
Cristian Maglie 8c49ee4206 Added class ArchiveExtractor 2015-03-27 14:51:09 +01:00
Cristian Maglie 7d5d7a8b31 Added FileNativeUtils class (for Linux, Windows and Mac)
Provides the following native methods:
- chmod
- link
- symlink
2015-03-27 14:51:09 +01:00
Cristian Maglie 38aefb2ab4 Added FileHash utility class 2015-03-27 14:51:09 +01:00
Cristian Maglie 0588790f5b Added JARs Bouncy Castle, Jackson, Common-compress 2015-03-27 14:51:08 +01:00
Cristian Maglie 48ad7ed769 Added FileUtils.createTempFolderIn(folder) method 2015-03-27 14:51:08 +01:00
Federico Fissore a8b29d48a5 MacOSX: it looks like filtering cu* ports was not a good choice. Filtering tty* instead 2015-03-27 14:46:30 +01:00
Federico Fissore bf0a0dc566 MacOSX: disabling loading of Quaqua LaF 2015-03-26 12:07:51 +01:00
Federico Fissore f183966296 Added GTKLookAndFeelFixer, courtesy Klaus Reimer
https://www.ailis.de/~k/archives/67-Workaround-for-borderless-Java-Swing-menus-on-Linux.html
It makes menu separators visible on linux with the GTK look and feel
2015-03-25 10:16:07 +01:00
Federico Fissore 70bbe398ab Network and Serial board ports discovery is now asynchronous, hence it does not block "tools" menu any more.
Fixes #2788
2015-03-24 13:41:10 +01:00
Federico Fissore ad72e41aa0 Introducing CollectStdOut and CollectStdOutStderrExecutor, handy classes for executing external execs and collecting their outputs 2015-03-19 10:17:10 +01:00
Martino Facchin 2222e0f2cd Merge pull request #2709 from projectgus/master
Fix auto-reset on Leonardo-derived boards from Linux hosts
2015-03-16 15:29:47 +01:00
Richard Wackerbarth 0644bdc51c Convert to action pattern to allow multiple actions 2015-03-11 10:28:32 -05:00
Richard Wackerbarth 2f65f5fdc1 Provide Hooks before and after the build process
Closes #2732
2015-03-11 10:28:32 -05:00
Richard Wackerbarth 498d615fb8 Additional context for build hooks 2015-03-11 10:28:31 -05:00
Federico Fissore c46e667e7a Started working on 1.6.2 2015-03-11 11:42:55 +01:00
Federico Fissore 2a4f0134ab arduino-core: restored debug info in class files 2015-03-10 08:52:42 +01:00
Federico Fissore 32123a8cb9 Fixed NPE in case of missing boardData 2015-03-10 08:52:42 +01:00
Federico Fissore 39d1dfc999 Added warning for uncertified boards 2015-03-10 08:52:41 +01:00
Cristian Maglie 5b7fd08d8d Merge pull request #2681 from PaulStoffregen/master
Improve library name matching
2015-03-09 23:21:02 +01:00
Federico Fissore aca6c223de MacOSX: previous better IDE was missing some pieces. Added 2015-03-04 11:23:36 +01:00
Federico Fissore e327bb091a MacOSX: better IDE 2015-03-03 15:48:20 +01:00
Cristian Maglie d1feeb5419 Added a bunch of new languages and updated translations 2015-02-27 15:10:27 +01:00
Angus Gratton a6909bdb49 Fix auto-reset on Leonardo-derived boards from Linux hosts
Also renamed the touchPort() function, as it's now unambiguously
single-purpose.

The 1200bps reset from Linux hosts wasn't working with these newer
JSSC-based versions. Adding a step which explicitly sets DTR low (via a
TIOCMSET ioctl clearing DTR) fixes this.

I'm fairly sure the reason why this worked on older Arduino with librxtx
and not with jssc is that librxtx appears to keep HUPCL in the termio
flags, but jssc appears to remove it. If HUPCL ("hangup on close") is
set, it causes DTR to be explicitly pulled low on close.
2015-02-27 11:13:09 +11:00
PaulStoffregen f474d1c585 Improve library name matching 2015-02-23 03:26:07 -08:00
Cristian Maglie 606604d7d6 Update revision log. Version set to 1.6.1. 2015-02-19 18:22:43 +01:00
Federico Fissore 0990f98b14 InetAddress.isReachable is reported reliable on mac and recent java versions
Refactored NetUtils.isReachable to two functions:
isReachableByEcho and isPortOpen
If the first one will fail, the second one will be used
2015-02-19 09:34:32 +01:00
Federico Fissore 3fec636b29 An attempt to improve Yun's discovery. Thanks @roadfun. See #2576 2015-02-19 09:15:23 +01:00
Cristian Maglie a39364193f "objcopy" recipes are no more tied to "hex" extension
This allow to define specific recipes for every platform
but keeps backward compatibility.

See #2614
2015-02-16 14:39:55 +01:00
Federico Fissore a49963d0ad Filter out /dev/cu* ports, can be re-enabled manually adding "serial.ports.showall=true" into preferences.txt file
Closes #2624
2015-02-13 10:53:12 +01:00
Federico Fissore e76d413454 When build.core is not defined, fall back to "arduino". Fixes #2635 2015-02-12 17:27:58 +01:00
Federico Fissore ff6fb31f4a Merge pull request #2582 from cmaglie/fix-underscore-glitch
Fixed incorrect boards.txt preference handling when submenu id has underscore
2015-02-11 16:42:46 +01:00
Arnav Gupta 79a74aa667 rename hex -> output
using generic term 'output', because for samx32,
output is .bin format and not .hex

Signed-off-by: Arnav Gupta <championswimmer@gmail.com>
2015-02-10 04:31:51 +05:30
Cristian Maglie 71c3948918 Updated translations 2015-02-08 19:49:27 +01:00
Cristian Maglie e93be4855f Corrected some email contacts. 2015-02-05 16:47:22 +01:00
Federico Fissore 7adaba5630 MacOS tests fix: new way of discovering work dir conflicts with tests execution. Fixed. 2015-02-03 17:00:51 +01:00
Federico Fissore ce911788eb Fixed bug with paths with spaces 2015-02-02 15:30:34 +01:00
Federico Fissore d460982623 Macosx: new appbundler, new macosx builds. Use platform=macosx and platform=oldmacosx 2015-02-02 09:53:56 +01:00
Cristian Maglie e360f82cae Fixed incorrect boards.txt preference handling when submenu id has underscore
Fixes #2533
2015-01-27 20:22:22 +01:00
Cristian Maglie f4a6b623b3 Updated translations 2015-01-19 14:57:31 +01:00
Cristian Maglie 3a062f0582 Updated translation from transifex 2015-01-14 18:27:27 +01:00
Cristian Maglie ff95d03663 Updated some translation strings 2015-01-14 18:05:00 +01:00
Cristian Maglie 81808d532e Merge branch 'ide-1.5.x-fail-when-no-platform-txt' of https://github.com/ffissore/Arduino into ide-1.5.x 2015-01-14 17:19:11 +01:00
Cristian Maglie 56b9f1cd6f Fixed NPE when currently selected platform is no more installed.
BaseNoGui.getTargetBoard() now handles null TargetBoard.
Removed unused method Base.getTargetBoard()
2015-01-13 23:16:53 +01:00
Cristian Maglie ec67b0d4be Optimized FileUtils.recursiveDelete(File) function 2015-01-13 23:16:53 +01:00
Cristian Maglie 29d2ab72e2 Fixed a bunch of simple warnings in java code 2015-01-13 23:16:50 +01:00
Federico Fissore fd4a5a82b3 Compiler: removed duplicated functions getCommandCompilerS, getCommandCompilerC, and getCommandCompilerCPP in favour of generic getCommandCompilerByRecipe 2015-01-08 13:58:03 +01:00
Federico Fissore f5520fc7e1 Compiler: removed duplicated functions compileEep and compileHex in favour of generic runRecipe 2015-01-08 13:58:03 +01:00
Federico Fissore 980709f6f7 Compiler: missing mandatory key now blocks compilation 2015-01-08 13:57:59 +01:00
Cristian Maglie 863cb417a6 Merge pull request #2485 from ffissore/ide-1.5.x-reenable-38400
Re enable 38400 baud rates
2015-01-06 17:39:44 +01:00
Cristian Maglie ad9fc89fce IDE: Removed unused stuff from Serial class 2014-12-24 18:57:46 +01:00
Cristian Maglie ab92e42259 Merge branch 'master' into ide-1.5.x
Conflicts:
	app/src/processing/app/Serial.java
	app/src/processing/app/SerialMonitor.java
2014-12-23 16:41:38 +01:00
Federico Fissore 2f08fe4ecf 38400 baud rate had issues with RXTX and linux. With JSSC, it seems to be working fine again. Fixes #2296 2014-12-04 13:10:01 +01:00
Federico Fissore ca1a355628 Network discovery: not showing board name is not resolvable (was printing "null") 2014-11-25 13:51:47 +01:00
Cristian Maglie 257238c050 IDE: better error handling for upload/burn bootloader
RunnerException was displayed with an ugly stacktrace, while the
message contained in the exception itself is already quite enough
detailed and clear.
2014-11-20 14:00:43 +01:00
Cristian Maglie 85aecfe0da IDE: Fixed default board selection. 2014-11-20 13:50:11 +01:00
Cristian Maglie b9e186e45a Upped version to 1.6.0 2014-11-18 14:48:01 +01:00
Cristian Maglie b0bd52b387 Removed duplicate version fields in Base class 2014-11-18 14:04:14 +01:00
Claudio Indellicati 98bdc7b587 Moved specialized Platform classes and related resources to the 'arduino-core' project. 2014-11-13 16:34:25 +01:00
Cristian Maglie d1f4e0370d arduino-core project is now correctly compiled through ant build script 2014-11-13 16:34:24 +01:00
Cristian Maglie ba8eadeeb5 Split IDE into 2 projects.
BEWARE: HIGHLY EXPERIMENTAL BRANCH
2014-11-13 16:34:24 +01:00